How to measure CPU load in TI Hercules TMS570LS3137 running FreeRTOS

dinodavid4 wrote on Thursday, June 23, 2016:

Hi,

I have generated a FreeRTOS code through Halcogen code generator tool given by TI. I have to measure the CPU load, memory usage, Stack usage, and other timing parameters for my applications (Totally 5 tasks).
Is there anyway to measure these parameter?
I am using Code Composer Studio v6.1.0 (CCS)
I came to know that Tracealyzer from percepio can be used to measure these parameters.
Can anybody let me know how to incorporate in CCS ? Is there any user guide ?

Thanks in advance

rtel wrote on Thursday, June 23, 2016:

I have to measure the CPU load,

You can measure the load of each task using the run time stats feature
described on this page: http://www.freertos.org/rtos-run-time-stats.html

Or more simply, you can measure the idle time by using an idle task hook
function to add code into the idle task, or a traceTASK_SWITCHED_IN/traceTASK_SWITCHED_OUT
macro to determine when and for how long the idle task is running. The
handle of the idle task being obtainable using the xTaskGetIdleTaskHandle()
API function.

memory usage,

If you are only using static
memory allocation
, then the linker and map file will tell you this.
Otherwise you can use the xPortGetMinimumEverFreeHeapSize()
function to see how much heap has been consumed.

Stack usage,

http://www.freertos.org/uxTaskGetStackHighWaterMark.html

You can also define a stack overflow hook function to detect stack
overflows.

I came to know that Tracealyzer from percepio can be used to measure
these parameters.
Can anybody let me know how to incorporate in CCS ?

FreeRTOS+Trace can be used with any development tools, although tools
that provide specific integration do make life easier.

Is there any user
guide ?

Yes.