Design of Fast and Efficient Energy-Aware Gradient-Based Scheduling Algorithms for Heterogeneous Embedded

In this paper, we present two heuristic energy-aware scheduling algorithms—1) Energy Gradient-based Multiprocessor Scheduling (EGMS) algorithm and 2) Energy Gradient-based Multiprocessor Scheduling with Intratask Voltage scaling (EGMSIV) algorithm—for scheduling task precedence graphs in an embedded multiprocessor system having processing elements with dynamic voltage scaling capabilities. Unlike most energy-aware scheduling algorithms that consider task ordering and voltage scaling separately from task mapping, our algorithms consider them in an integrated way. EGMS uses the concept of energy gradient to select tasks to be mapped onto new processors and voltage levels. EGMSIV extends EGMS by introducing intratask voltage scaling using a Linear Programming (LP) formulation to further reduce the energy consumption. Through rigorous simulations, we compare the performance of our proposed algorithms with a few approaches presented in the literature. The results demonstrate that our algorithms are capable of obtaining energy-efficient schedules using less optimization time. On the average, our algorithms produce schedules which consume 10 percent less energy with more than 47 percent reduction in optimization time when compared to a few approaches presented in the literature. In particular, our algorithms perform better in generating energy-efficient schedules for larger task graphs. Our results show a reduction of up to 57 percent in energy consumption for larger task graphs compared to other approaches. Index Terms—Energy-aware scheduling, power management, dynamic voltage scaling, energy minimization, heterogeneous multiprocessor scheduling, embedded systems. C

[1]  Pai H. Chou,et al.  Fast and efficient voltage scheduling by evolutionary slack distribution , 2004 .

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

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

[4]  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..

[5]  Krzysztof Kuchcinski,et al.  LEneS: task scheduling for low-energy systems using variable supply voltage processors , 2001, ASP-DAC '01.

[6]  Pai H. Chou,et al.  An efficient voltage scaling algorithm for complex SoCs with few number of voltage modes , 2004, Proceedings of the 2004 International Symposium on Low Power Electronics and Design (IEEE Cat. No.04TH8758).

[7]  Bharadwaj Veeravalli,et al.  An Energy-Aware Gradient-Based Scheduling Heuristic for Heterogeneous Multiprocessor Embedded Systems , 2007, HiPC.

[8]  Howard Jay Siegel,et al.  Task execution time modeling for heterogeneous computing systems , 2000, Proceedings 9th Heterogeneous Computing Workshop (HCW 2000) (Cat. No.PR00556).

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

[10]  Pai H. Chou,et al.  Ultra-fast and efficient algorithm for energy optimization by gradient-based stochastic voltage and task scheduling , 2007, TODE.

[11]  Jürgen Teich,et al.  Hybrid global/local search strategies for dynamic voltage scaling in embedded multiprocessors , 2001, Ninth International Symposium on Hardware/Software Codesign. CODES 2001 (IEEE Cat. No.01TH8571).

[12]  Viktor K. Prasanna,et al.  Energy-Balanced Task Allocation for Collaborative Processing in Wireless Sensor Networks , 2005, Mob. Networks Appl..

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

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

[15]  Petru Eles,et al.  Energy-efficient mapping and scheduling for DVS enabled distributed embedded systems , 2002, Proceedings 2002 Design, Automation and Test in Europe Conference and Exhibition.

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

[17]  David S. Johnson,et al.  Computers and Intractability: A Guide to the Theory of NP-Completeness , 1978 .

[18]  Qi Yang,et al.  Energy-aware partitioning for multiprocessor real-time systems , 2003, Proceedings International Parallel and Distributed Processing Symposium.

[19]  Petru Eles,et al.  Overhead-conscious voltage selection for dynamic and leakage energy reduction of time-constrained systems , 2005 .

[20]  Chi-Ying Tsui,et al.  Minimizing energy consumption of multiple-processors-core systems with simultaneous task allocation, scheduling and voltage assignment , 2004 .

[21]  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..

[22]  Rami G. Melhem,et al.  Power aware scheduling for AND/OR graphs in multiprocessor real-time systems , 2002, Proceedings International Conference on Parallel Processing.

[23]  Hiroto Yasuura,et al.  Voltage scheduling problem for dynamically variable voltage processors , 1998, Proceedings. 1998 International Symposium on Low Power Electronics and Design (IEEE Cat. No.98TH8379).