This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RTOS/TM4C1290NCZAD: Difference between CPU Load Monitoring Module and RTOS Load Analysis in UIA

Part Number: TM4C1290NCZAD

Tool/software: TI-RTOS

Hi,

I would like to ask what is the difference between CPU Load Monitoring module and RTOS Load Analysis in UIA in TI-RTOS?

I noticed that they return different result for the same application. When I use CPU Load Monitoring module with all options (Task, SWI, HWI) enabled I get about 50% of CPU load but when I use RTOS Load Analysis (configured in the same way) I get about 46%. Task, SWI and HWI loads differ as well.

I used Load_getCPULoad() to read CPU loads in both cases.

Does any of these two methods give more accurate readings and do they both add same overhead when enabled?

Thank you.

Best regards,

Peter A.

  • I've assigned your thread, but the engineer is out today. They will get back to you on Monday.

    Todd
  • Greetings Todd,

    May I commend you for this type of "caring responsiveness?"    

    As "small tech firm owner" - we note that our "crack" (primarily) millennial staff - have a great tendency to "maintain silence" until (they believe) they've "assembled a complete (i.e. somewhat defensible) answer."     And this makes guys/gals like me - totally NUTZ!      

    "Silence" (deafens) and makes us wonder:

    • did our request get thru?    (i.e. reach them)
    • are they interested?
    • have they the capability to respond?
    • are they/their firm too "jammed" presently?
    • and - when may (some) feedback (potentially or ever) arrive?

    None of this "Good" - and all avoided - by "Just the response you've caringly & quickly provided!"    (i.e. a great "Modeling" of "how to respond" - even when - and especially when - "Not all data and/or conclusions are fully available!)

    Excellent Teaching Moment - thank you Todd...     (crack & unruly staff  may now accept - "Its not just me!")      One hopes...  (maybe)

  • Hi Todd,
    Thank you for the information.
    Best regards,
    Peter A.
  • Hi Peter,

    RTOS Analyzer uses the Load module to obtain CPU, Task, Swi, and Hwi loads.  These loads are updated and logged in a Load Idle function when the Load module's 'windowInMS' time period has elapsed.  The default window is 500 MSecs.  This is the minimum time between updates, since the Idle loop may not have a chance to run until some time after the period has elapsed.  When you call Load_getCPULoad() it returns the last updated CPU load, so I would expect to see very similar values to what you see in RTOS Analyzer.  I wouldn't expect to see a load of 50% from Load_getCPULoad() and 46% from RTOS Analyzer.

    Can you explain a little more how you're getting the CPU load?  Do you have a task that runs periodically and calls Load_getCPULoad()?

    Best regards,

    Janet

  • Hi Janet,
    Sorry for the delay. I was trying to reproduce the problem that I initially reported but couldn't. Then I realised that something else was also changing in my test environment and most likely the differences in CPU loads reported by the two modules where caused by those changes. Thank you for your help and sorry for the confusion.

    Best regards,
    Peter A.