A short tale of how horrible code yields clean performance.
We investigate memory loads and stores that the compiler inserts for us without our knowledge: “the compiler’s secret life”. We show that these loads and stores, although necessary for the compiler are not necessary for the correct functioning of our program. And finally, we explain how you can improve the performance of your program by removing them.
We introduce compiler optimization report, a useful tool if you wish to speed up your program by looking at what the compiler failed to optimize.
In this post we present key concepts of software performance engineering.