Benoît Pradelle, Muthu Baskaran, Tom Henretty, Benoît Meister, Athanasios Konstantinidis, Richard Lethin
Publication Source: 2016 IEEE High Performance Extreme Computing Conference (HPEC '16), Waltham, MA, USA.
In the last decade, the scope of software optimizations expanded to encompass energy consumption on top of the classical runtime minimization objective. In that context, several optimizations have been developed to improve the software energy efficiency. However, these optimizations commonly rely on long profiling steps and are often implemented as unstable runtime systems, which limits their applicability.
We propose in this paper a new energy model and two associated energy optimizations that can be performed at compilation time, without having to profile the compiled programs. The model predicts the energy consumption of programs at compilation time using the precise software representation available in the polyhedral model. The energy model is then used at the core of two compiler optimizations to generate more efficient programs. The model and the two optimizations have been implemented in the R-Stream compiler.