Compilers for leakage power reduction

Power leakage constitutes an increasing fraction of the total power consumption in modern semiconductor technologies. Recent research efforts indicate that architectures, compilers, and software can be optimized so as to reduce the switching power (also known as dynamic power) in microprocessors. This has lead to interest in using architecture and compiler optimization to reduce leakage power (also known as static power) in microprocessors. In this article, we investigate compiler-analysis techniques that are related to reducing leakage power. The architecture model in our design is a system with an instruction set to support the control of power gating at the component level. Our compiler provides an analysis framework for utilizing instructions to reduce the leakage power. We present a framework for analyzing data flow for estimating the component activities at fixed points of programs whilst considering pipeline architectures. We also provide equations that can be used by the compiler to determine whether employing power-gating instructions in given program blocks will reduce the total energy requirements. As the duration of power gating on components when executing given program routines is related to the number and complexity of program branches, we propose a set of scheduling policies and evaluate their effectiveness. We performed experiments by incorporating our compiler analysis and scheduling policies into SUIF compiler tools and by simulating the energy consumptions on Wattch toolkits. The experimental results demonstrate that our mechanisms are effective in reducing leakage power in microprocessors.

[1]  Wei-Kuan Shih,et al.  Real-Time Task Scheduling for Dynamically Variable Voltage Processors , 2001 .

[2]  Vivek Tiwari,et al.  Reducing power in high-performance microprocessors , 1998, Proceedings 1998 Design and Automation Conference. 35th DAC. (Cat. No.98CH36175).

[3]  Anantha P. Chandrakasan,et al.  Low-power CMOS digital design , 1992 .

[4]  Sharad Malik,et al.  Power analysis and minimization techniques for embedded DSP software , 1997, IEEE Trans. Very Large Scale Integr. Syst..

[5]  Kaushik Roy Leakage power reduction in low-voltage CMOS designs , 1998, 1998 IEEE International Conference on Electronics, Circuits and Systems. Surfing the Waves of Science and Technology (Cat. No.98EX196).

[6]  Jenq Kuen Lee,et al.  Compiler optimization on VLIW instruction scheduling for low power , 2003, TODE.

[7]  Santosh Pande,et al.  Optimizing Static Power Dissipation by Functional Units in Superscalar Processors , 2002, CC.

[8]  Ibrahim N. Hajj,et al.  Architectural and compiler techniques for energy reduction in high-performance microprocessors , 2000, IEEE Trans. Very Large Scale Integr. Syst..

[9]  Jenq Kuen Lee,et al.  Probabilistic Points-to Analysis , 2001, LCPC.

[10]  Luca Benini,et al.  State assignment for low power dissipation , 1995 .

[11]  Kaushik Roy,et al.  Circuit activity driven multilevel logic optimization for low power reliable operation , 1993, 1993 European Conference on Design Automation with the European Event in ASIC Design.

[12]  Todd M. Austin,et al.  The SimpleScalar tool set, version 2.0 , 1997, CARN.

[13]  Massimo Poncino,et al.  Re-encoding sequential circuits to reduce power dissipation , 1994, ICCAD '94.

[14]  Jenq Kuen Lee,et al.  Efficient support of parallel sparse computation for array intrinsic functions of Fortran 90 , 1998, ICS '98.

[15]  Miodrag Potkonjak,et al.  Power optimization of variable-voltage core-based systems , 1999, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[16]  Alfred V. Aho,et al.  Compilers: Principles, Techniques, and Tools , 1986, Addison-Wesley series in computer science / World student series edition.

[17]  Srinivas Devadas,et al.  ISDL: an instruction set description language for retargetability , 1997, DAC.

[18]  Kaushik Roy,et al.  SYCLOP: synthesis of CMOS logic for low power applications , 1992, Proceedings 1992 IEEE International Conference on Computer Design: VLSI in Computers & Processors.

[19]  S. Thompson MOS Scaling: Transistor Challenges for the 21st Century , 1998 .

[20]  Alvin M. Despain,et al.  Cache designs for energy efficiency , 1995, Proceedings of the Twenty-Eighth Annual Hawaii International Conference on System Sciences.

[21]  Kaushik Roy,et al.  Gated-Vdd: a circuit technique to reduce leakage in deep-submicron cache memories , 2000, ISLPED '00.

[22]  Jenq Kuen Lee,et al.  A Function-Composition Approach to Synthesize Fortran 90 Array Operations , 1998, J. Parallel Distributed Comput..

[23]  Glenn H. Chapman,et al.  Guest Editorial Foreword to the Special Section on WSI'95 , 1997, IEEE Trans. Very Large Scale Integr. Syst..

[24]  Margaret Martonosi,et al.  Wattch: a framework for architectural-level power analysis and optimizations , 2000, Proceedings of 27th International Symposium on Computer Architecture (IEEE Cat. No.RS00201).

[25]  Jenq Kuen Lee,et al.  A Bytecode Optimizer to Engineer Bytecodes for Performance , 2000, LCPC.

[26]  M. Horowitz,et al.  Low-power digital design , 1994, Proceedings of 1994 IEEE Symposium on Low Power Electronics.

[27]  Vivek De,et al.  Technology and design challenges for low power and high performance [microprocessors] , 1999, Proceedings. 1999 International Symposium on Low Power Electronics and Design (Cat. No.99TH8477).

[28]  Sharad Malik,et al.  Dynamic power management for microprocessors: a case study , 1997, Proceedings Tenth International Conference on VLSI Design.

[29]  Jenq Kuen Lee,et al.  Interprocedural probabilistic pointer analysis , 2004, IEEE Transactions on Parallel and Distributed Systems.

[30]  G. Sohi,et al.  A static power model for architects , 2000, Proceedings 33rd Annual IEEE/ACM International Symposium on Microarchitecture. MICRO-33 2000.

[31]  Margaret Martonosi,et al.  Cache decay: exploiting generational behavior to reduce cache leakage power , 2001, ISCA 2001.

[32]  Massoud Pedram,et al.  Register Allocation and Binding for Low Power , 1995, 32nd Design Automation Conference.

[33]  A.P. Chandrakasan,et al.  Dual-threshold voltage techniques for low-power digital circuits , 2000, IEEE Journal of Solid-State Circuits.

[34]  Jenq Kuen Lee,et al.  Probabilistic inference schemes for sparsity structures of Fortran 90 array intrinsics , 2001, International Conference on Parallel Processing, 2001..

[35]  B. Doyle Poly Poly nitride Poly Poly Silicon Silicon Resist Silicon Silicon Silicon nitride Resist OxideOxide Oxide Oxide Silicon poly poly Oxide Oxide , 2002 .

[36]  Marios C. Papaefthymiou,et al.  Precomputation-based sequential logic optimization for low power , 1994, IEEE Trans. Very Large Scale Integr. Syst..

[37]  Chi-Ying Tsui,et al.  Technology Decomposition and Mapping Targeting Low Power Dissipation , 1993, 30th ACM/IEEE Design Automation Conference.