TY - JOUR
T1 - Instruction Scheduling for Low Power
AU - Parikh, Amisha
AU - Kim, Soontae
AU - Kandemir, Mahmut
AU - Vijaykrishnan, Narayanan
AU - Irwin, Mary Jane
N1 - Funding Information:
This work was supported in part by National Science Foundation grants 0073419, 0082064 and 0103583, career awards 0093082 and 0093085, and GSRC.
PY - 2004/5
Y1 - 2004/5
N2 - Reducing energy consumption has become an important issue in designing hardware and software systems in recent years. Although low power hardware components are critical for reducing energy consumption, the switching activity, which is the main source of dynamic power dissipation in electronic systems, is largely determined by the software running on these systems. In this paper, we present and evaluate several instruction scheduling algorithms that reorder a given sequence of instructions taking into account the energy considerations. We first compare a performance-oriented-scheduling technique with three energy-oriented instruction scheduling algorithms from both performance (execution cycles of the resulting schedules) and energy consumption points of view. Then, we propose three scheduling algorithms that consider energy and performance at the same time. Our experimentation with these scheduling techniques shows that the best scheduling from the performance perspective is not necessarily the best scheduling from the energy perspective. Further, scheduling techniques that consider both energy and performance simultaneously are found to be desirable, that is, these techniques are quite successful in reducing energy consumption and their performance (in terms of execution cycles) is comparable to that of a pure performance-oriented scheduling. We also illuminate the inherent approximations and difficulties in building energy models for enabling energy-aware instruction scheduling and explore alternative options using cycle-accurate energy simulator. The simulation results show that the energy-oriented scheduling reduces energy consumption by up to 30% compared to the performance-oriented scheduling.
AB - Reducing energy consumption has become an important issue in designing hardware and software systems in recent years. Although low power hardware components are critical for reducing energy consumption, the switching activity, which is the main source of dynamic power dissipation in electronic systems, is largely determined by the software running on these systems. In this paper, we present and evaluate several instruction scheduling algorithms that reorder a given sequence of instructions taking into account the energy considerations. We first compare a performance-oriented-scheduling technique with three energy-oriented instruction scheduling algorithms from both performance (execution cycles of the resulting schedules) and energy consumption points of view. Then, we propose three scheduling algorithms that consider energy and performance at the same time. Our experimentation with these scheduling techniques shows that the best scheduling from the performance perspective is not necessarily the best scheduling from the energy perspective. Further, scheduling techniques that consider both energy and performance simultaneously are found to be desirable, that is, these techniques are quite successful in reducing energy consumption and their performance (in terms of execution cycles) is comparable to that of a pure performance-oriented scheduling. We also illuminate the inherent approximations and difficulties in building energy models for enabling energy-aware instruction scheduling and explore alternative options using cycle-accurate energy simulator. The simulation results show that the energy-oriented scheduling reduces energy consumption by up to 30% compared to the performance-oriented scheduling.
UR - http://www.scopus.com/inward/record.url?scp=1842739856&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=1842739856&partnerID=8YFLogxK
U2 - 10.1023/B:VLSI.0000017007.28247.f6
DO - 10.1023/B:VLSI.0000017007.28247.f6
M3 - Review article
AN - SCOPUS:1842739856
SN - 1939-8018
VL - 37
SP - 129
EP - 149
JO - Journal of Signal Processing Systems
JF - Journal of Signal Processing Systems
IS - 1
ER -