Traditionally, profiling is associated with measuring execution times of functions. Knowing that a function takes a specific amount of clock cycles or milliseconds to execute is in itself not very helpful to identify if the function can be improved at all and which code or setting needs to be modified in what specific way to actually make the function run much faster on your specific target device. Unlike existing profilers that measure only function run-times, the TASKING Embedded Profiler has built-in expertlevel knowledge about the AURIX inner-workings, so that it can:
- Identify functions and code lines that unnecessarily waste large amounts of core time because they misuse hardware resources within the AURIX,
- Explain the root cause of these performance bottlenecks,
- Provide concrete mitigation suggestions to quickly resolve the bottleneck with minimal effort.
After a short, non-intrusive analysis of your code’s runtime behavior using a simple USB-cable or inexpensive miniwiggler connected to your AURIX board, the TASKING Embedded Profiler tells you exactly which source lines and configuration settings cause the biggest slow down, what the root cause of that slowdown is and what you need to do to fix the specific problem. After having fixed the problem, function runtimes measured by the tool before and after the fix can be compared to evaluate what speedup was achieved by applying the fix. When applying this smart profiling technology to code running on a new microcontroller, often significant speedups can be achieved within a few hours of work because the small changes needed to improve the code (without altering what is computed) can be found immediately and the improved code utilizes the microcontroller specific hardware resources much more optimally