When you mentioned the heap, you reminded me:

FreeRTOS has a heap, which is essentially just a big array.  The only thing it gets used for is allocating task stacks and the structures that represent semaphores, queues, etc.  And they way that I have used the OS, they get allocated but never released.  But the thing I meant to say is that allocating smaller stacks does not use less memory from the linker's point of view because the array that the stacks are allocated from is not changed.   There is a routine you can use to ask how much heap is free.  After it is all booted up, unless the new code uses it differently than I did, any "free heap" is wasted.  I think the size of the heap is an OS parameter in one of the free rtos header files.

73,

Burns Fisher, WB1FJ
AMSAT(R) Engineering -- Flight Software


On Mon, Jan 15, 2024 at 7:31 PM Jim McCullers via pacsat-dev <pacsat-dev@amsat.org> wrote:

My version of CSS is either different or how did you turn on the green lines with summary data?

I get a popup status message with similar info but not as stable or detailed as yours.

 

On my system, I’m showing 80% utilization.

The majority is in ucHeap (about 131k).

I’ll bet on a function somewhere allocating a chunk of memory or repeatedly doing so and never using or releasing it.

Should be ‘fun’ to find.

 

Jim McCullers

WA4CWI

 

 

 

Looks like we have an issue with memory usage in RAM

 

If you load up CCS with the current project PacSatSW and build it then you can select VIEW -> Memory Allocation  and look at the tab. You will see the package needs 154K or RAM and the Launpad has 191K.  In the case of the TMS570LS0914 we have 128K max.

You can expand RAM and the subfolders and see where the memory is being used.

 

I worked for the last few days getting a HalCoGen setup for the LS0914 and then murging this HCG file with the code of the Launcpad project. After working through some issues it built but when it ran the linker it errored out with not enough memory. So faked it out and told the linker I had more memory. Then it would build and generate a .out file and the Memory Allocation info. It matches the launch pad build.

 

Probably need to look for ways to reduce RAM needed. Reduce buffer sizes, move buffers to external memory, or take out code.

 

I will be looking for things here to try and complete a basic build of the code for the LS0914. Please look for ideas and post any that you come up with. We probably should target RAM usage at about 80% of the max or about 100KB.  We could change processors later but that would need some study.

 

Bob

 


-----------------------------------------------------------

pacsat-dev mailing list -- pacsat-dev@amsat.org
View archives of this mailing list at https://mailman.amsat.org/hyperkitty/list/pacsat-dev@amsat.org
To unsubscribe send an email to pacsat-dev-leave@amsat.org
Manage all of your AMSAT-NA mailing list preferences at https://mailman.amsat.org