Energy- and performance-aware scheduling of tasks on parallel and distributed systems

Enabled by high-speed networking in commercial, scientific, and government settings, the realm of high performance is burgeoning with greater amounts of computational and storage resources. Large-scale systems such as computational grids consume a significant amount of energy due to their massive sizes. The energy and cooling costs of such systems are often comparable to the procurement costs over a year period. In this survey, we will discuss allocation and scheduling algorithms, systems, and software for reducing power and energy dissipation of workflows on the target platforms of single processors, multicore processors, and distributed systems. Furthermore, recent research achievements will be investigated that deal with power and energy efficiency via different power management techniques and application scheduling algorithms. The article provides a comprehensive presentation of the architectural, software, and algorithmic issues for energy-aware scheduling of workflows on single, multicore, and parallel architectures. It also includes a systematic taxonomy of the algorithms developed in the literature based on the overall optimization goals and characteristics of applications.

[1]  Rajesh K. Gupta,et al.  CoolSpots: reducing the power consumption of wireless mobile devices with multiple radio interfaces , 2006, MobiSys '06.

[2]  David A. Bader,et al.  BioPerf: a benchmark suite to evaluate high-performance computer architecture on bioinformatics applications , 2005, IEEE International. 2005 Proceedings of the IEEE Workload Characterization Symposium, 2005..

[3]  David H. Albonesi,et al.  Selective cache ways: on-demand cache resource allocation , 1999, MICRO-32. Proceedings of the 32nd Annual ACM/IEEE International Symposium on Microarchitecture.

[4]  Sanjay Ranka,et al.  Using game theory for scheduling tasks on multi-core processors for simultaneous optimization of performance and energy , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

[5]  Ishfaq Ahmad,et al.  A cooperative game theoretical replica placement technique , 2007, 2007 International Conference on Parallel and Distributed Systems.

[6]  Gautam Kar,et al.  Application Performance Management in Virtualized Server Environments , 2006, 2006 IEEE/IFIP Network Operations and Management Symposium NOMS 2006.

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

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

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

[10]  Albert Y. Zomaya,et al.  A Cooperative Game Framework for QoS Guided Job Allocation Schemes in Grids , 2008, IEEE Transactions on Computers.

[11]  Wu-chun Feng,et al.  The Green500 List: Encouraging Sustainable Supercomputing , 2007, Computer.

[12]  Vangelis Metsis,et al.  Energy-Constrained Scheduling of DAGs on Multi-core Processors , 2009, IC3.

[13]  Viktor K. Prasanna,et al.  Power-aware resource allocation for independent tasks in heterogeneous real-time systems , 2002, Ninth International Conference on Parallel and Distributed Systems, 2002. Proceedings..

[14]  Rajesh K. Gupta,et al.  Dynamic slack reclamation with procrastination scheduling in real-time embedded systems , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[15]  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).

[16]  Rajesh K. Gupta,et al.  Leakage aware dynamic voltage scaling for real-time embedded systems , 2004, Proceedings. 41st Design Automation Conference, 2004..

[17]  Henry Hoffmann,et al.  Dynamic knobs for responsive power-aware computing , 2011, ASPLOS XVI.

[18]  Frank Mueller,et al.  Feedback EDF scheduling exploiting dynamic voltage scaling , 2004, Proceedings. RTAS 2004. 10th IEEE Real-Time and Embedded Technology and Applications Symposium, 2004..

[19]  Rajkumar Buyya,et al.  Power Aware Scheduling of Bag-of-Tasks Applications with Deadline Constraints on DVS-enabled Clusters , 2007, Seventh IEEE International Symposium on Cluster Computing and the Grid (CCGrid '07).

[20]  Mark Horowitz,et al.  Energy dissipation in general purpose microprocessors , 1996, IEEE J. Solid State Circuits.

[21]  Shekhar Y. Borkar,et al.  Design challenges of technology scaling , 1999, IEEE Micro.

[22]  Douglas Thain,et al.  Scheduling Grid workloads on multicore clusters to minimize energy and maximize performance , 2009, 2009 10th IEEE/ACM International Conference on Grid Computing.

[23]  Luca Benini,et al.  Low-power task scheduling for multiple devices , 2000, CODES '00.

[24]  Ian T. Foster,et al.  Globus: a Metacomputing Infrastructure Toolkit , 1997, Int. J. High Perform. Comput. Appl..

[25]  Woongki Baek,et al.  Green: a framework for supporting energy-conscious programming using controlled approximation , 2010, PLDI '10.

[26]  Hakan Aydin,et al.  Energy-constrained scheduling for weakly-hard real-time systems , 2005, 26th IEEE International Real-Time Systems Symposium (RTSS'05).

[27]  Ishfaq Ahmad,et al.  On using game theory to optimize the rate control in video coding , 2006, IEEE Transactions on Circuits and Systems for Video Technology.

[28]  Message P Forum,et al.  MPI: A Message-Passing Interface Standard , 1994 .

[29]  Rajesh K. Gupta,et al.  Energy aware non-preemptive scheduling for hard real-time systems , 2005, 17th Euromicro Conference on Real-Time Systems (ECRTS'05).

[30]  Bishop Brock,et al.  Dynamic Power Management for Embedded Systems , 2003 .

[31]  Karsten Schwan,et al.  Providing platform heterogeneity-awareness for data center power management , 2008, Cluster Computing.

[32]  D. Serra,et al.  Game theory and economics , 2003 .

[33]  Quentin F. Stout Minimizing peak energy on mesh-connected systems , 2006, SPAA '06.

[34]  Petru Eles,et al.  On-line thermal aware dynamic voltage scaling for energy optimization with frequency/temperature dependency consideration , 2009, 2009 46th ACM/IEEE Design Automation Conference.

[35]  Akshat Verma,et al.  Power-aware dynamic placement of HPC applications , 2008, ICS '08.

[36]  Hui Liu,et al.  Overhead-aware energy optimization for real-time streaming applications on multiprocessor System-on-Chip , 2011, TODE.

[37]  James M. Rehg,et al.  Compiler-Directed Remote Task Execution for Power Management , 2000 .

[38]  Kiyoung Choi,et al.  Power conscious fixed priority scheduling for hard real-time systems , 1999, DAC '99.

[39]  Jon Loveday The Sloan Digital Sky Survey , 1998 .

[40]  Sharad Malik,et al.  Managing dynamic reconfiguration overhead in systems-on-a-chip design using reconfigurable datapaths and optimized interconnection networks , 2001, Proceedings Design, Automation and Test in Europe. Conference and Exhibition 2001.

[41]  Ishfaq Ahmad,et al.  Dynamic Critical-Path Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors , 1996, IEEE Trans. Parallel Distributed Syst..

[42]  Message Passing Interface Forum MPI: A message - passing interface standard , 1994 .

[43]  Fernando Redondo Game Theory and Economics , 2001 .

[44]  Karthick Rajamani,et al.  A performance-conserving approach for reducing peak power consumption in server systems , 2005, ICS '05.

[45]  Thomas D. Burd,et al.  Voltage scheduling in the IpARM microprocessor system , 2000, ISLPED'00: Proceedings of the 2000 International Symposium on Low Power Electronics and Design (Cat. No.00TH8514).

[46]  Rami G. Melhem,et al.  Collaborative operating system and compiler power management for real-time applications , 2003, The 9th IEEE Real-Time and Embedded Technology and Applications Symposium, 2003. Proceedings..

[47]  Rami G. Melhem,et al.  Energy aware scheduling for distributed real-time systems , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[48]  Natalie D. Enright Jerger,et al.  An Evaluation of Server Consolidation Workloads for Multi-Core Designs , 2007, 2007 IEEE 10th International Symposium on Workload Characterization.

[49]  C. Siva Ram Murthy,et al.  Scheduling Precedence Constrained Task Graphs with Non-Negligible Intertask Communication onto Multiprocessors , 1994, IEEE Trans. Parallel Distributed Syst..

[50]  Rami G. Melhem,et al.  Optimal reward-based scheduling of periodic real-time tasks , 1999, Proceedings 20th IEEE Real-Time Systems Symposium (Cat. No.99CB37054).

[51]  Manish Gupta,et al.  Power-Aware Microarchitecture: Design and Modeling Challenges for Next-Generation Microprocessors , 2000, IEEE Micro.

[52]  Dong Li,et al.  PowerPack: Energy Profiling and Analysis of High-Performance Systems and Applications , 2010, IEEE Transactions on Parallel and Distributed Systems.

[53]  Karam S. Chatha,et al.  Approximation algorithms for power minimization of earliest deadline first and rate monotonic schedules , 2007, Proceedings of the 2007 international symposium on Low power electronics and design (ISLPED '07).

[54]  Albert Y. Zomaya,et al.  Practical Scheduling of Bag-of-Tasks Applications on Grids with Dynamic Resilience , 2007, IEEE Transactions on Computers.

[55]  Y. Charlie Hu,et al.  Program counter based techniques for dynamic power management , 2004, 10th International Symposium on High Performance Computer Architecture (HPCA'04).

[56]  Feng Zhao,et al.  Energy aware consolidation for cloud computing , 2008, CLUSTER 2008.

[57]  Gang Quan,et al.  Transition-overhead-aware voltage scheduling for fixed-priority real-time systems , 2007, TODE.

[58]  Jianli Zhuo,et al.  An efficient dynamic task scheduling algorithm for battery powered DVS systems , 2005, Proceedings of the ASP-DAC 2005. Asia and South Pacific Design Automation Conference, 2005..

[59]  Chenyang Lu,et al.  Schedulability analysis and utilization bounds for highly scalable real-time services , 2001, Proceedings Seventh IEEE Real-Time Technology and Applications Symposium.

[60]  Fei Li,et al.  Competitive Analysis of Energy-Constrained Real-Time Scheduling , 2009, 2009 21st Euromicro Conference on Real-Time Systems.

[61]  Ishfaq Ahmad,et al.  On Exploiting Task Duplication in Parallel Program Scheduling , 1998, IEEE Trans. Parallel Distributed Syst..

[62]  Mark Horowitz,et al.  Clustered voltage scaling technique for low-power design , 1995, ISLPED '95.

[63]  Mingsong Chen,et al.  Efficient Techniques for Directed Test Generation Using Incremental Satisfiability , 2009, 2009 22nd International Conference on VLSI Design.

[64]  Luca Benini,et al.  Dynamic power management using adaptive learning tree , 1999, 1999 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (Cat. No.99CH37051).

[65]  Ragunathan Rajkumar,et al.  Portable RK: a portable resource kernel for guaranteed and enforced timing behavior , 1999, Proceedings of the Fifth IEEE Real-Time Technology and Applications Symposium.

[66]  Rami G. Melhem,et al.  Power-aware scheduling for periodic real-time tasks , 2004, IEEE Transactions on Computers.

[67]  Nagarajan Kandasamy,et al.  Power and performance management of virtualized computing environments via lookahead control , 2008, 2008 International Conference on Autonomic Computing.

[68]  Keqin Li,et al.  Performance Analysis of Power-Aware Task Scheduling Algorithms on Multiprocessor Computers with Dynamic Voltage and Speed , 2008, IEEE Transactions on Parallel and Distributed Systems.

[69]  Giorgio Buttazzo,et al.  Hard Real-Time Computing Systems: Predictable Scheduling Algorithms and Applications , 1997 .

[70]  Parthasarathy Ranganathan,et al.  Energy-Driven Statistical Sampling: Detecting Software Hotspots , 2002, PACS.

[71]  Ishfaq Ahmad,et al.  Non-cooperative, semi-cooperative, and cooperative games-based grid resource allocation , 2006, Proceedings 20th IEEE International Parallel & Distributed Processing Symposium.

[72]  Meng Wang,et al.  Overhead-Aware System-Level Joint Energy and Performance Optimization for Streaming Applications on Multiprocessor Systems-on-Chip , 2008, 2008 Euromicro Conference on Real-Time Systems.

[73]  Krishnendu Chakrabarty,et al.  Pruning-based, energy-optimal, deterministic I/O device scheduling for hard real-time systems , 2005, TECS.

[74]  Rong Ge,et al.  Performance-constrained Distributed DVS Scheduling for Scientific Applications on Power-aware Clusters , 2005, ACM/IEEE SC 2005 Conference (SC'05).

[75]  Niraj K. Jha,et al.  Power-conscious joint scheduling of periodic task graphs and aperiodic tasks in distributed real-time embedded systems , 2000, IEEE/ACM International Conference on Computer Aided Design. ICCAD - 2000. IEEE/ACM Digest of Technical Papers (Cat. No.00CH37140).

[76]  RankaSanjay,et al.  Energy- and performance-aware scheduling of tasks on parallel and distributed systems , 2012 .

[77]  Steven M. Nowick,et al.  ACM Journal on Emerging Technologies in Computing Systems , 2010, TODE.

[78]  Mahadev Satyanarayanan,et al.  Managing battery lifetime with energy-aware adaptation , 2004, TOCS.

[79]  Massoud Pedram,et al.  Minimizing energy consumption of a chip multiprocessor through simultaneous core consolidation and DVFS , 2010, Proceedings of 2010 IEEE International Symposium on Circuits and Systems.

[80]  Frederica Darema,et al.  Grid Computing and Beyond: The Context of Dynamic Data Driven Applications Systems , 2005, Proceedings of the IEEE.

[81]  Ranvijay,et al.  Efficient energy constrained scheduling approach for dynamic real time system , 2010, 2010 First International Conference On Parallel, Distributed and Grid Computing (PDGC 2010).

[82]  Dakai Zhu,et al.  Power Management for Real-Time Embedded Systems on Block-Partitioned Multicore Platforms , 2008, 2008 International Conference on Embedded Software and Systems.

[83]  E. N. Elnozahy,et al.  Energy-Efficient Server Clusters , 2002, PACS.

[84]  Karam S. Chatha,et al.  Approximation algorithm for the temperature-aware scheduling problem , 2007, 2007 IEEE/ACM International Conference on Computer-Aided Design.

[85]  John Shalf,et al.  Power efficiency in high performance computing , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

[86]  Joonwon Lee,et al.  Energy Efficient Scheduling of Real-Time Tasks on Multicore Processors , 2008, IEEE Transactions on Parallel and Distributed Systems.

[87]  Mor Harchol-Balter,et al.  Optimal power allocation in server farms , 2009, SIGMETRICS '09.

[88]  Bill Moyer,et al.  A low power unified cache architecture providing power and performance flexibility , 2000, ISLPED'00: Proceedings of the 2000 International Symposium on Low Power Electronics and Design (Cat. No.00TH8514).

[89]  Daniel Mossé,et al.  Dynamic optimization of power and performance for virtualized server clusters , 2010, SAC '10.

[90]  Sanjay Ranka,et al.  DVS based energy minimization algorithm for parallel machines , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

[91]  Hiroyuki Tomiyama,et al.  Instruction scheduling for power reduction in processor-based system design , 1998, Proceedings Design, Automation and Test in Europe.

[92]  Sanjay Ranka,et al.  Dynamic Algorithms for Energy Minimization on Parallel Machines , 2008, 16th Euromicro Conference on Parallel, Distributed and Network-Based Processing (PDP 2008).

[93]  A. Veidenbaum,et al.  Architectural and compiler strategies for dynamic power management in the COPPER project , 2001, 2001 Innovative Architecture for Future Generation High-Performance Processors and Systems.

[94]  Rami G. Melhem,et al.  Scheduling with Dynamic Voltage/Speed Adjustment Using Slack Reclamation in Multiprocessor Real-Time Systems , 2003, IEEE Trans. Parallel Distributed Syst..

[95]  Frank Vahid,et al.  A highly configurable cache for low energy embedded systems , 2005, TECS.

[96]  Albert Y. Zomaya,et al.  Minimizing Energy Consumption for Precedence-Constrained Applications Using Dynamic Voltage Scaling , 2009, 2009 9th IEEE/ACM International Symposium on Cluster Computing and the Grid.

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

[98]  Koen Holtman,et al.  CMS Data Grid System Overview and Requirements , 2001 .

[99]  HoffmannHenry,et al.  Dynamic knobs for responsive power-aware computing , 2011 .