Software Performance plays a critical role in almost all embedded projects. Faster code yields better response rates and increased system output. It also lowers energy consumption and makes cheaper hardware feasible.

Surprisingly, in this domain little attention is given to the mapping between source code parts and their resulting performance.

Unfounded prejudices, e.g. against certain modern C++ language features, dominate discussions and prevent urgently needed innovation in the area of embedded software engineering. At the same time MCU features such as caching and pipelines make it increasingly difficult to judge runtime performance – even when considering the assembly output.

This presentation shows an engineering-based method to measure code performance for embedded microcontrollers. Cycle-precise results allow for well-founded discussions on the applicability of language, library or design features in question.