CPU Load
An important metric in the analysis of embedded applications is the CPU idle time. The idle time is the amount of time the CPU is not busy. If the Operating System (OS) has an idle task the idle time is simply the amount of time the idle task is running.
CPU Load functionality displays the amount of time OS spent outside the idle task is running per-core and it visualizes the data in the Profiler Timeline window. CPU Load is calculated on top of an existing recording, similar to Profiler Inspectors.
•OS
•winIDEA 9.21.22 and newer
Open Profiler Timeline. |
Select and enable CPU Load. |
1. Press Post Process in the Profiler Timeline. 2. Select CPU Load. |
3. Check the Enable check box. 4. (Optional). Set the Period. 5. Close the dialog.
This configuration suffice for majority of use cases, since by default neutral tasks (displayed with green color) are considered the default ones. |
Further configuration. |
Too calculate CPU Load for multiple tasks as "idle", you can additionally select from which tasks CPU Load should be calculated.
1. Check the Manual check box. 2. (Optional). Set the Period. In the example the period is set to 5 ms, this means that if inside this period "idle" task was active for 1ms, then CPU Load would show 80% since the 4 ms (80%) OS was executing some other task than "idle".
3. Close the dialog. |
Results are displayed in the Profiler Timeline.
CPU Load is calculated per core (CPU0, CPU1) and the parent area (CPULoad) shows the average value of all cores. |
Export data. |
Refer to the Profiler Export chapter.