Abstract: The rapidly increasing number of architectural changes in embedded
processors puts compiler technology under an enormous stress. This is
emphasized by new demands on compilers, like requirements to reduce static code
size, energy consumption or power dissipation. Iterative compilation has been
proposed as an approach to find the best sequence of optimizations (such as
loop transformations) for an application, in order to improve its performance.
In this paper, we study both the effect of several loop transformations on
energy consumption as well as the possibility of using the iterative
compilation method in order to find the best compiled code for energy. From
analyzed benchmarks, we conclude that in most cases the decrease in energy
consumption is coming together with performance improvement. However, the best
compiled code for performance is not always the best one for energy. Thus, a
combined energy-performance factor may be considered to evaluate the compiled
code in order to have good compromises. As iterative compilation has been
proven to be a good approach to compilation for performance, we may conclude
that it is also promising for the compilation for energy problem.
Keywords: Iterative compilation, program optimization, energy consumption, loop transformations