By Nick Flaherty www.flaherty.co.uk
RTOS developer Express Logic has added access to Performance Execution Profiling information with IAR Embedded Workbench. Developers need as much information as possible to correctly design and implement applications for commercial systems. That information must be presented in a clear, simple, and easy-to-understand form for it to be useful.
Express Logic’s ThreadX RTOS optionally collects and processes a variety of run-time statistics, including the following:
- CPU execution percentage of each application thread
- CPU execution percentage of total interrupt processing
- CPU idle time percentage
- Total number of thread preemptions, suspensions, and priority inversions
- Total number of mutex, semaphore, and event flag puts, gets, and sets
- Total number of messages sent/received
- Total number of memory allocations, deallocations, fragments, merges, etc.
- Total timer activations and expirations
This collection of information is now presented in a clear, tabular form within IAR Embedded Workbench. IAR Embedded Workbench presents full “kernel awareness” information for ThreadX, including the current status of all application threads and RTOS objects, such as semaphores, mutexes, timers, and message queues. Now, with the addition of Execution Profiling information, IAR Embedded Workbench provides extensive and useful information on RTOS-based application performance. It would be virtually impossible for the developer to instrument the application and derive this information and the new ability of the tools from IAR Systems to display it makes this information instantly available and more useful to the application.
With this new feature, developers are able to more fully analyze their application to determine how much processing is still available, as well as where most of the processing is taking place. From this information, a developer can determine if there is enough available processor cycles to handle maximum system loading requirements (safety margin) or to add additional application functionality. Alternatively, if there is an excessive amount of available cycles, the developer may choose to lower the frequency of the processor to reduce power consumption. Finally, the information provides an excellent roadmap for optimization because it shows exactly where the processing is taking place.
“The ThreadX Execution Profiling information now presented by IAR Embedded Workbench gives developers a quick, informative view of what their application is doing up to that point,” said William Lamie, President of Express Logic. “This information greatly helps developers understand their system, especially where optimizations are most beneficial. No other IDE offers this valuable information, making the ThreadX-IAR Embedded Workbench combination indeed a best-of-class solution for commercial product development.”
ThreadX is available in full source code form, royalty-free, with project license prices starting at $12,500.