Abstract
This paper presents an efficient and accurate high-level software energy estimation methodology using the concept of characterization-based macromodeling. In characterization-based macromodeling, a function or subroutine is characterized using an accurate lower level energy model of the target processor to construct a macromodel that relates the energy consumed in the function under consideration to various parameters that can be easily observed or calculated from a high-level programming language description. The constructed macromodels eliminate the need for significantly slower instruction-level interpretation or hardware simulation that is required in conventional approaches to software energy estimation. The authors present two different approaches to macromodeling for embedded software that offer distinct efficiency-accuracy characteristics: 1) complexity-based macromodeling, where the variables that determine the algorithmic complexity of the function under consideration are used as macromodeling parameters and 2) profiling-based macromodeling, where internal profiling statistics for the functions are used as the parameters in the energy macromodels. The authors have experimentally validated their software energy macromodeling techniques on a wide range of embedded software routines and two different target processor architectures. The experiments demonstrate that high-level macromodels constructed using the proposed techniques are able to estimate the energy consumption to within 94% accuracy on the average, while commanding speedups of one to five orders-of-magnitude over current instruction-level and architectural energy estimation techniques.
| Original language | English (US) |
|---|---|
| Pages (from-to) | 1037-1050 |
| Number of pages | 14 |
| Journal | IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems |
| Volume | 21 |
| Issue number | 9 |
| DOIs | |
| State | Published - Sep 2002 |
All Science Journal Classification (ASJC) codes
- Software
- Computer Graphics and Computer-Aided Design
- Electrical and Electronic Engineering
Keywords
- Embedded software
- Energy macromodeling
- High-level macromodels
- Power consumption