Energy-Aware Loop Scheduling and Assignment for Multi-Core, Multi-Functional-Unit Architecture

Switching activity and instruction cycles are two of the most important factors in power dissipation when the supply voltage is fixed. This paper studies the scheduling and assignment problems that minimize the total energy caused by both instruction processing and switching activities for applications with loops on multi-core, multi-Functional-Unit (multi-FU) architectures. An algorithm, EMPLS (Energy Minimization with Probability using Loop Scheduling), is proposed to minimize the total energy (E) while satisfying timing constraint (L) with guaranteed probability (P). We perform scheduling and assignment simultaneously. Our approach shows better performance than the approaches that consider scheduling and assignment in separate phases. Compared with previous work, our algorithm exhibits significant improvement in total energy reduction.

[1]  Richard A. Huff,et al.  Lifetime-sensitive modulo scheduling , 1993, PLDI '93.

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

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

[4]  Edwin Hsing-Mean Sha,et al.  Rotation Scheduling: A Loop Pipelining Algorithm , 1993, 30th ACM/IEEE Design Automation Conference.

[5]  J. Cortadella,et al.  Scheduling and resource binding for low power , 1995 .

[6]  Michael Franz,et al.  Power reduction techniques for microprocessor systems , 2005, CSUR.

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

[8]  Jihong Kim,et al.  Power-aware modulo scheduling for high-performance VLIW processors , 2001, ISLPED '01.

[9]  Edwin Hsing-Mean Sha,et al.  Loop scheduling algorithms for power reduction , 1998, Proceedings of the 1998 IEEE International Conference on Acoustics, Speech and Signal Processing, ICASSP '98 (Cat. No.98CH36181).

[10]  Abhijit Chatterjee,et al.  Efficient instruction-level optimization methodology for low-power embedded systems , 2001, International Symposium on System Synthesis (IEEE Cat. No.01EX526).

[11]  Massoud Pedram,et al.  High-level power modeling, estimation, and optimization , 1998, IEEE Trans. Comput. Aided Des. Integr. Circuits Syst..

[12]  Mircea R. Stan,et al.  Bus-invert coding for low-power I/O , 1995, IEEE Trans. Very Large Scale Integr. Syst..

[13]  Jordi Cortadella,et al.  High-level synthesis techniques for reducing the activity of functional units , 1995, ISLPED '95.

[14]  Monica S. Lam,et al.  RETROSPECTIVE : Software Pipelining : An Effective Scheduling Technique for VLIW Machines , 1998 .

[15]  Chaitali Chakrabarti,et al.  An approach to switching activity consideration during high-level, low-power design space exploration , 2002 .

[16]  Keshab K. Parhi,et al.  ILP-based cost-optimal DSP synthesis with module selection and data format conversion , 1998, IEEE Trans. Very Large Scale Integr. Syst..

[17]  Nikil D. Dutt,et al.  Low-power memory mapping through reducing address bus activity , 1999, IEEE Trans. Very Large Scale Integr. Syst..

[18]  Thanos Stouraitis,et al.  Low power synthesis of sum-of-products computation , 2000, ISLPED'00: Proceedings of the 2000 International Symposium on Low Power Electronics and Design (Cat. No.00TH8514).

[19]  Ira Krepchin,et al.  Texas Instruments Inc. , 1963, Nature.

[20]  Atakan Dogan,et al.  Matching and Scheduling Algorithms for Minimizing Execution Time and Failure Probability of Applications in Heterogeneous Computing , 2002, IEEE Trans. Parallel Distributed Syst..

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

[22]  Niraj K. Jha,et al.  An ILP formulation for low power based on minimizing switched capacitance during data path allocation , 1995, Proceedings of ISCAS'95 - International Symposium on Circuits and Systems.

[23]  Andrew Wolfe,et al.  Compilation techniques for low energy: an overview , 1994, Proceedings of 1994 IEEE Symposium on Low Power Electronics.

[24]  Charles E. Leiserson,et al.  Retiming synchronous circuitry , 1988, Algorithmica.

[25]  Larry Carter,et al.  Scheduling strategies for master-slave tasking on heterogeneous processor platforms , 2004, IEEE Transactions on Parallel and Distributed Systems.

[26]  D. Kim,et al.  Low power pipelining of linear systems: A common operand centric approach , 2001, ISLPED'01: Proceedings of the 2001 International Symposium on Low Power Electronics and Design (IEEE Cat. No.01TH8581).

[27]  Edwin Hsing-Mean Sha,et al.  Algorithms and analysis of scheduling for loops with minimum switching , 2006, Int. J. Comput. Sci. Eng..

[28]  Guang R. Gao,et al.  On achieving balanced power consumption in software pipelined loops , 2002, CASES '02.

[29]  Chi-Ying Tsui,et al.  Saving power in the control path of embedded processors , 1994, IEEE Design & Test of Computers.

[30]  Edwin Hsing-Mean Sha,et al.  Probabilistic Loop Scheduling for Applications with Uncertain Execution Time , 2000, IEEE Trans. Computers.

[31]  Thanos Stouraitis,et al.  Low power synthesis of sum-of-products computation (poster session) , 2000, ISLPED '00.

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

[33]  Keshab K. Parhi,et al.  Approaches to low-power implementations of DSP systems , 2001 .

[34]  Mahesh Mehendale,et al.  Coefficient optimization for low power realization of FIR filters , 1995, VLSI Signal Processing, VIII.

[35]  Giovanni De Micheli,et al.  Synthesis and Optimization of Digital Circuits , 1994 .

[36]  Narayanan Vijaykrishnan,et al.  Instruction scheduling based on energy and performance constraints , 2000, Proceedings IEEE Computer Society Workshop on VLSI 2000. System Design for a System-on-Chip Era.

[37]  Edwin Hsing-Mean Sha,et al.  Efficient assignment and scheduling for heterogeneous DSP systems , 2005, IEEE Transactions on Parallel and Distributed Systems.

[38]  Sharad Malik,et al.  Power analysis of embedded software: a first step towards software power minimization , 1994, IEEE Trans. Very Large Scale Integr. Syst..

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

[40]  Eike Schmidt,et al.  Estimation of lower and upper bounds on the power consumption from scheduled data flow graphs , 2001, IEEE Trans. Very Large Scale Integr. Syst..