System-Wide Energy Minimization for Real-Time Tasks: Lower Bound and Approximation

We present a dynamic voltage scaling (DVS) technique that minimizes system-wide energy consumption for both periodic and sporadic tasks. It is known that a system consists of processors and a number of other components. Energy-aware processors can be run in different speed levels; components like memory and I/O subsystems and network interface cards can be in a standby state when they are active but idle. Processor energy optimization solutions are not necessarily efficient from the perspective of systems. Current system-wide energy optimization studies are often limited to periodic tasks with heuristics in getting approximated solutions. In this paper, we develop an exact dynamic programming algorithm for periodic tasks on processors with practical discrete speed levels. The algorithm determines the lower bound of energy expenditure in pseudo-polynomial time. An approximation algorithm is proposed to provide performance guarantee with a given bound in polynomial running time. Because of their time efficiency, both the optimization and approximation algorithms can be adapted for online scheduling of sporadic tasks with irregular task releases. We prove that system-wide energy optimization for sporadic tasks is NP-hard in the strong sense. We develop (pseudo-) polynomial-time solutions by exploiting its inherent properties

[1]  Wayne H. Wolf,et al.  Process Partitioning for Distributed Embedded Systems , 1996, CODES.

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

[3]  Alan Burns,et al.  Allocating hard real-time tasks: An NP-Hard problem made easy , 1992, Real-Time Systems.

[4]  Gen-Huey Chen,et al.  A branch-and-bound-with-underestimates algorithm for the task assignment problem with precedence constraint , 1990, Proceedings.,10th International Conference on Distributed Computing Systems.

[5]  Kang G. Shin,et al.  Period-Based Load Partitioning and Assignment for Large Real-Time Applications , 2000, IEEE Trans. Computers.

[6]  Xiaobo Sharon Hu,et al.  Practical On-line DVS Scheduling for Fixed-Priority Real-Time Systems , 2005, IEEE Real-Time and Embedded Technology and Applications Symposium.

[7]  Rami G. Melhem,et al.  Practical PACE for embedded systems , 2004, EMSOFT '04.

[8]  K.G. Shin,et al.  On-line dynamic voltage scaling for hard real-time systems using the EDF algorithm , 2004, 25th IEEE International Real-Time Systems Symposium.

[9]  Tei-Wei Kuo,et al.  Leakage-Aware Energy-Efficient Scheduling of Real-Time Tasks in Multiprocessor Systems , 2006, 12th IEEE Real-Time and Embedded Technology and Applications Symposium (RTAS'06).

[10]  X.S. Hu,et al.  Practical on-line DVS scheduling for fixed-priority real-time systems , 2003, 11th IEEE Real Time and Embedded Technology and Applications Symposium.

[11]  Tei-Wei Kuo,et al.  1 + ε approximation clock rate assignment for periodic real-time tasks on a voltage-scaling processor , 2005, EMSOFT.

[12]  Chaitali Chakrabarti,et al.  System-level energy-efficient dynamic task scheduling , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[13]  Bart Selman,et al.  Heavy-Tailed Phenomena in Satisfiability and Constraint Satisfaction Problems , 2000, Journal of Automated Reasoning.

[14]  David Thomas,et al.  The Art in Computer Programming , 2001 .

[15]  Pai H. Chou,et al.  Application/architecture power co-optimization for embedded systems powered by renewable sources , 2005, Proceedings. 42nd Design Automation Conference, 2005..

[16]  Chung-Ping Chung,et al.  A dominance relation enhanced branch-and-bound task allocation , 2001, J. Syst. Softw..

[17]  Rami Melhem,et al.  The effects of energy management on reliability in real-time embedded systems , 2004, ICCAD 2004.

[18]  Nikitas J. Dimopoulos,et al.  A new heuristic for solving the multichoice multidimensional knapsack problem , 2005, IEEE Transactions on Systems, Man, and Cybernetics - Part A: Systems and Humans.

[19]  Xiliang Zhong,et al.  System-wide energy minimization for real-time tasks: lower bound and approximation , 2006, ICCAD '06.

[20]  M. Potkonjak,et al.  On-line scheduling of hard real-time tasks on variable voltage processor , 1998, 1998 IEEE/ACM International Conference on Computer-Aided Design. Digest of Technical Papers (IEEE Cat. No.98CB36287).

[21]  Kang G. Shin,et al.  Optimal combined task and message scheduling in distributed real-time systems , 1995, Proceedings 16th IEEE Real-Time Systems Symposium.

[22]  Sarma B. K. Vrudhula,et al.  Energy management for battery-powered embedded systems , 2003, TECS.

[23]  Harold S. Stone,et al.  Multiprocessor Scheduling with the Aid of Network Flow Algorithms , 1977, IEEE Transactions on Software Engineering.

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

[25]  R. Dechter to Constraint Satisfaction , 1991 .

[26]  Eric Rotenberg,et al.  FAST: Frequency-aware static timing analysis , 2006, TECS.

[27]  Deeparnab Chakrabarty,et al.  Knapsack Problems , 2008 .

[28]  Linwei Niu,et al.  Fixed priority scheduling for reducing overall energy on variable voltage processors , 2004, 25th IEEE International Real-Time Systems Symposium.

[29]  Toshihide Ibaraki,et al.  Computing Edge-Connectivity in Multigraphs and Capacitated Graphs , 1992, SIAM J. Discret. Math..

[30]  Klara Nahrstedt,et al.  Energy-efficient CPU scheduling for multimedia applications , 2006, TOCS.

[31]  Niraj K. Jha,et al.  Joint dynamic voltage scaling and adaptive body biasing for heterogeneous distributed real-time embedded systems , 2003, IEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems.

[32]  Toshihide Ibaraki,et al.  Computing All Small Cuts in an Undirected Network , 1997, SIAM J. Discret. Math..

[33]  Mechthild Stoer,et al.  A simple min-cut algorithm , 1997, JACM.

[34]  Xiliang Zhong,et al.  Energy-Aware Modeling and Scheduling for Dynamic Voltage Scaling with Statistical Real-Time Guarantee , 2007, IEEE Transactions on Computers.

[35]  Edward P. K. Tsang,et al.  Foundations of constraint satisfaction , 1993, Computation in cognitive science.

[36]  Trevor Mudge,et al.  Combined dynamic voltage scaling and adaptive body biasing for lower power microprocessors under dynamic workloads , 2002, ICCAD 2002.

[37]  Rajesh K. Gupta,et al.  Dynamic voltage scaling for systemwide energy minimization in real-time embedded systems , 2004, Proceedings of the 2004 International Symposium on Low Power Electronics and Design (IEEE Cat. No.04TH8758).

[38]  K. Dudzinski,et al.  Exact methods for the knapsack problem and its generalizations , 1987 .

[39]  Steve Goddard,et al.  Integrated Device Scheduling and Processor Voltage Scaling for System-wide Energy Conservation , 2005 .

[40]  Virginia Mary Lo,et al.  Heuristic Algorithms for Task Assignment in Distributed Systems , 1988, IEEE Trans. Computers.

[41]  Donald E. Knuth,et al.  The Art of Computer Programming: Volume 3: Sorting and Searching , 1998 .

[42]  Rami G. Melhem,et al.  Optimal Reward-Based Scheduling for Periodic Real-Time Tasks , 2001, IEEE Trans. Computers.

[43]  Sharad Malik,et al.  Bounds on power savings using runtime dynamic voltage scaling: an exact algorithm and a linear-time heuristic approximation , 2005, ISLPED '05. Proceedings of the 2005 International Symposium on Low Power Electronics and Design, 2005..

[44]  Naehyuck Chang,et al.  Memory-aware energy-optimal frequency assignment for dynamic supply voltage scaling , 2004, Proceedings of the 2004 International Symposium on Low Power Electronics and Design (IEEE Cat. No.04TH8758).

[45]  M. V. Wilkes,et al.  The Art of Computer Programming, Volume 3, Sorting and Searching , 1974 .

[46]  Rami G. Melhem,et al.  The effects of energy management on reliability in real-time embedded systems , 2004, IEEE/ACM International Conference on Computer Aided Design, 2004. ICCAD-2004..

[47]  Toby Walsh Depth-bounded Discrepancy Search , 1997, IJCAI.

[48]  Masahiro Tsuchiya,et al.  A Task Allocation Model for Distributed Computing Systems , 1982, IEEE Transactions on Computers.

[49]  Steve Goddard,et al.  A dynamic voltage scaling algorithm for sporadic tasks , 2003, RTSS 2003. 24th IEEE Real-Time Systems Symposium, 2003.

[50]  Kang G. Shin,et al.  Allocation of Periodic Task Modules with Precedence and Deadline Constraints , 1997, IEEE Trans. Computers.

[51]  Sang Lyul Min,et al.  Preemption-aware dynamic voltage scaling in hard real-time systems , 2004, Proceedings of the 2004 International Symposium on Low Power Electronics and Design (IEEE Cat. No.04TH8758).

[52]  Samuel T. Chanson,et al.  Allocating Task Interaction Graphs to Processors in Heterogeneous Networks , 1997, IEEE Trans. Parallel Distributed Syst..

[53]  Xiliang Zhong,et al.  Energy-aware modeling and scheduling of real-time tasks for dynamic voltage scaling , 2005, 26th IEEE International Real-Time Systems Symposium (RTSS'05).

[54]  Fan Zhang,et al.  Improving communication energy efficiency in wireless networks powered by Renewable energy sources , 2005, IEEE Transactions on Vehicular Technology.

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

[56]  Too-Seng Tia,et al.  Task and resource assignment in distributed real-time systems , 1994, Second Workshop on Parallel and Distributed Real-Time Systems.

[57]  Dorit S. Hochbaum,et al.  Polynomial algorithm for the k-cut problem , 1988, [Proceedings 1988] 29th Annual Symposium on Foundations of Computer Science.

[58]  Massoud Pedram,et al.  Dynamic voltage and frequency scaling under a precise energy model considering variable and fixed components of the system power dissipation , 2004, ICCAD 2004.

[59]  Daniel Mossé,et al.  Adaptive scheduling server for power-aware real-time tasks , 2004, TECS.

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

[61]  Catherine E. Houstis,et al.  Module Allocation of Real-Time Applications to Distributed Systems , 1987, IEEE Trans. Software Eng..

[62]  Donald Ervin Knuth,et al.  The Art of Computer Programming , 1968 .

[63]  Donald F. Towsley,et al.  On-Line Scheduling Policies for a Class of IRIS (Increasing Reward with Increasing Service) Real-Time Tasks , 1996, IEEE Trans. Computers.

[64]  Chien-Chung Shen,et al.  A Graph Matching Approach to Optimal Task Assignment in Distributed Computing Systems Using a Minimax Criterion , 1985, IEEE Trans. Computers.

[65]  C. Siva Ram Murthy,et al.  Optimal task allocation in distributed systems by graph matching and state space search , 1999, J. Syst. Softw..

[66]  Jan Jonsson,et al.  Evaluation of Search Heuristics for Embedded System Scheduling Problems , 2001, CP.

[67]  Krithi Ramamritham,et al.  Allocation and Scheduling of Precedence-Related Periodic Tasks , 1995, IEEE Trans. Parallel Distributed Syst..