Get Information about the Runtime Impact on Embedded Platforms
Function developers using Simulink often don’t know how design decisions will affect the application’s runtime on the target embedded platform. Decisions about which data types to use or how to implement functionality can make a big difference depending on the actual target platform. In typical workflows, the models are converted into C code with tools such as TargetLink, which already performs some optimizations for the actual target platform. With emmtrix Performance Estimator, this generated code can be automatically analyzed with respect to the expected timing behavior on the selected target. The performance estimation results from the C code are mapped back to Simulink blocks and their hierarchies. For each module and subsystem, the results include the runtime for a single execution of itself. Where possible, the average, minimum, and maximum runtimes are provided based on the control structures, such as blocks or loops, and how they affect the number of times blocks are executed.
With this new feature, function developers implementing algorithms in models will be able to get information about the runtime impact on the selected embedded platform when selecting realizations or setting options. The results are presented in a new HTML report that has features like sorting, filtering and colored indicators about the estimation confidence.
This feature will be released soon in a new version of our emmtrix tools.
- Automatic generation of reports and visualization for more detailed information
- Confidence levels for classification of results
- Easy to integrate into the development workflow
- Static performance estimation without the need to run the code
- Fast evaluation for different target platforms
- Static performance estimation based on C code generated by TargetLink. Other code generators may follow.
- Static performance estimation based on assembly code
- Performance estimation with model based design
- Continuous monitoring of performance changes during the development
- Detailed information to better understand the timing behavior of your application
- Detect high-runners or critical parts of your models
Simulink Report Example
Some Supported Platforms
A wide range of supported target platforms ranging from general-purpose processors (e.g. ARM Cortex-A series or X86) to special-purpose microcontrollers (e.g. Infineon Aurix family) are already supported. In general, the performance estimation can be easily adapted and customized to provide basic supoprt for new processor architectures. More complex and accurate hardware models with respect to the processor pipeline can be supported on demand.