Identifying Compiler Options to Minimise Energy Consumption for Embedded Platforms
arXiv:1303.6485 · doi:10.1093/comjnl/bxt129
Abstract
This paper presents an analysis of the energy consumption of an extensive number of the optimisations a modern compiler can perform. Using GCC as a test case, we evaluate a set of ten carefully selected benchmarks for five different embedded platforms. A fractional factorial design is used to systematically explore the large optimisation space (2^82 possible combinations), whilst still accurately determining the effects of optimisations and optimisation combinations. Hardware power measurements on each platform are taken to ensure all architectural effects on the energy consumption are captured. We show that fractional factorial design can find more optimal combinations than relying on built in compiler settings. We explore the relationship between run-time and energy consumption, and identify scenarios where they are and are not correlated. A further conclusion of this study is the structure of the benchmark has a larger effect than the hardware architecture on whether the optimisation will be effective, and that no single optimisation is universally beneficial for execution time or energy consumption.
14 pages, 7 figures
Cited by in corpus (12)
- A Survey on Compiler Autotuning using Machine Learning
- Static analysis of energy consumption for LLVM IR programs
- POSET-RL: Phase ordering for Optimizing Size and Execution Time using Reinforcement Learning
- Less is More: Exploiting the Standard Compiler Optimization Levels for Better Performance and Energy Consumption
- Lost in translation: Exposing hidden compiler optimization opportunities
- A Study of Energy and Locality Effects using Space-filling Curves
- Automatically Tuning the GCC Compiler to Optimize the Performance of Applications Running on Embedded Systems
- HyperDegrade: From GHz to MHz Effective CPU Frequencies
- MLComp: A Methodology for Machine Learning-based Performance Estimation and Adaptive Selection of Pareto-Optimal Compiler Optimization Sequences
- Unleashing the Hidden Power of Compiler Optimization on Binary Code Difference: An Empirical Study
- Thermal Modeling and Optimal Allocation of Avionics Safety-critical Tasks on Heterogeneous MPSoCs
- Development of Energy Models for Design Space Exploration of Embedded Many-Core Systems