Three-phase time-aware energy minimization with DVFS and unrolling for Chip Multiprocessors

Energy consumption has been one of the most critical issues in the Chip Multiprocessor (CMP). Using the Dynamic Voltage and Frequency Scaling (DVFS), a CMP system can achieve a balance between the performance and the energy-efficiency. In this paper, we propose a three-phase discrete DVFS algorithm for a CMP system dedicated to applications where the period of the applications' task graph is smaller than the deadline of tasks. In these applications, multiple task graphs are unrolled and then concatenated together to form a new task graph. The proposed DVFS algorithm is applied to the newly formed task graph to stretch tasks' execution time, lower operating frequencies of processors and achieve the system power efficiency. Experimental results show that the proposed algorithm reduces the energy dissipation by 25% on average, compared to previous DVFS approaches.

[1]  Krishnan Srinivasan,et al.  An ILP formulation for system level throughput and power optimization in multiprocessor SoC architectures , 2004, 17th International Conference on VLSI Design. Proceedings..

[2]  Petru Eles,et al.  Energy Optimization of Multiprocessor Systems on Chip by Voltage Selection , 2007, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[3]  Bashir M. Al-Hashimi,et al.  Considering power variations of DVS processing elements for energy minimisation in distributed systems , 2001, International Symposium on System Synthesis (IEEE Cat. No.01EX526).

[4]  R.W. Brodersen,et al.  A dynamic voltage scaled microprocessor system , 2000, IEEE Journal of Solid-State Circuits.

[5]  Qing Wu,et al.  Energy Aware Dynamic Voltage and Frequency Selection for Real-Time Systems with Energy Harvesting , 2008, 2008 Design, Automation and Test in Europe.

[6]  Qing Wu,et al.  Task Merging for Dynamic Power Management of Cyclic Applications in Real-Time Multiprocessor Systems , 2006, 2006 International Conference on Computer Design.

[7]  Meikang Qiu,et al.  Battery-aware task scheduling in distributed mobile systems with lifetime constraint , 2011, 16th Asia and South Pacific Design Automation Conference (ASP-DAC 2011).

[8]  Scott Shenker,et al.  Scheduling for reduced CPU energy , 1994, OSDI '94.

[9]  Weitong Chuang,et al.  Delay and area optimization for discrete gate sizes under double-sided timing constraints , 1993, Proceedings of IEEE Custom Integrated Circuits Conference - CICC '93.

[10]  Wayne H. Wolf,et al.  TGFF: task graphs for free , 1998, Proceedings of the Sixth International Workshop on Hardware/Software Codesign. (CODES/CASHE'98).

[11]  Meikang Qiu,et al.  Impacts of Inaccurate Information on Resource Allocation for Multi-Core Embedded Systems , 2010, 2010 10th IEEE International Conference on Computer and Information Technology.

[12]  Niraj K. Jha,et al.  Static and dynamic variable voltage scheduling algorithms for real-time heterogeneous distributed embedded systems , 2002, Proceedings of ASP-DAC/VLSI Design 2002. 7th Asia and South Pacific Design Automation Conference and 15h International Conference on VLSI Design.

[13]  Zhiyuan Li,et al.  Energy-Aware Scheduling for Real-Time Multiprocessor Systems with Uncertain Task Execution Time , 2007, 2007 44th ACM/IEEE Design Automation Conference.

[14]  Meikang Qiu,et al.  Dynamic and Leakage Energy Minimization With Soft Real-Time Loop Scheduling and Voltage Assignment , 2010, IEEE Transactions on Very Large Scale Integration (VLSI) Systems.

[15]  Meikang Qiu,et al.  Cost minimization while satisfying hard/soft timing constraints for heterogeneous embedded systems , 2009, TODE.

[16]  Niraj K. Jha,et al.  Power-profile driven variable voltage scaling for heterogeneous distributed real-time embedded systems , 2003, 16th International Conference on VLSI Design, 2003. Proceedings..

[17]  Qing Wu,et al.  An adaptive scheduling and voltage/frequency selection algorithm for real-time energy harvesting systems , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[18]  Meikang Qiu,et al.  A Discrete Dynamic Voltage and Frequency Scaling Algorithm Based on Task Graph Unrolling for Multiprocessor System , 2009, 2009 International Conference on Scalable Computing and Communications; Eighth International Conference on Embedded Computing.

[19]  Niraj K. Jha,et al.  Low-power system scheduling, synthesis and displays , 2005 .

[20]  Sascha Uhrig,et al.  Energy Management for Embedded Multithreaded Processors with Integrated EDF Scheduling , 2005, ARCS.

[21]  Z Liu,et al.  Scheduling Theory and its Applications , 1997 .

[22]  Xiao Qin,et al.  EAD and PEBD: Two Energy-Aware Duplication Scheduling Algorithms for Parallel Tasks on Homogeneous Clusters , 2011, IEEE Transactions on Computers.

[23]  Xiaobo Sharon Hu,et al.  Task scheduling and voltage selection for energy minimization , 2002, DAC '02.

[24]  F. Frances Yao,et al.  A scheduling model for reduced CPU energy , 1995, Proceedings of IEEE 36th Annual Foundations of Computer Science.

[25]  Oscar H. Ibarra,et al.  Heuristic Algorithms for Scheduling Independent Tasks on Nonidentical Processors , 1977, JACM.

[26]  Christian Haubelt,et al.  SystemCoDesigner—an automatic ESL synthesis approach by design space exploration and behavioral synthesis for streaming applications , 2009, TODE.