FreeRTOS Support Archive
The FreeRTOS support forum is used to obtain active support directly from Real
Time Engineers Ltd. In return for using our top quality software and services for
free, we request you play fair and do your bit to help others too! Sign up
to receive notifications of new support topics then help where you can.
This is a read only archive of threads posted to the FreeRTOS support forum.
The archive is updated every week, so will not always contain the very latest posts.
Use these archive pages to search previous posts. Use the Live FreeRTOS Forum
link to reply to a post, or start a new support thread.
[FreeRTOS Home] [Live FreeRTOS Forum] [FAQ] [Archive Top] [July 2014 Threads] Percentage use of the CPUPosted by alainm3 on July 20, 2014 Is there a reference implementation of an indicator of CPU used/free time in % ?
Motivation:I had a test thread without any call to vTaskDelay() by mistake, because of that all lower priority task were never executed. It could prove a valuable debug tool to check is the Idle task is executing as much as is expected.
Alternative: I could maybe set a bit while entering the Idle task and reseting it on exit, how would I do that?
Percentage use of the CPUPosted by rtel on July 20, 2014 I think there are several things you can do.
1) Add in an idle hook function that keeps a cycle count for how many times the idle task loops around, then have a high priority 'watchdog task' (referred to as a 'check' task in all the official demos) that monitors how the cycle counters of each task to ensure they are cycling as expected.
2) Use the run-time-stats feature, which is generic up to the point of the time source which is necessarily application specific (not just port specific).
3) Use the traceTASKSWITCHEDIN() or traceTASKSWITCHEDOUT trace macros to count how many times the idle task gets switched in/out. You can use xTaskGetIdleTaskHandle() to find the handle of the idle task.
4) Use FreeRTOS+Trace to visualise exactly how your application is running.
Regards,
Richard Barry.
Copyright (C) Amazon Web Services, Inc. or its affiliates. All rights reserved.
|