Abstract
In this paper, scheduling parallel tasks on multiprocessor computers with dynamically variable voltage and speed are addressed as combinatorial optimization problems. Two problems are defined, namely, minimizing schedule length with energy consumption constraint and minimizing energy consumption with schedule length constraint. The first problem has applications in general multiprocessor and multicore processor computing systems where energy consumption is an important concern and in mobile computers where energy conservation is a main concern. The second problem has applications in real-time multiprocessing systems and environments where timing constraint is a major requirement. Our scheduling problems are defined such that the energy-delay product is optimized by fixing one factor and minimizing the other. It is noticed that power-aware scheduling of parallel tasks has rarely been discussed before. Our investigation in this paper makes some initial attempt to energy-efficient scheduling of parallel tasks on multiprocessor computers with dynamic voltage and speed. Our scheduling problems contain three nontrivial subproblems, namely, system partitioning, task scheduling, and power supplying. Each subproblem should be solved efficiently, so that heuristic algorithms with overall good performance can be developed. The above decomposition of our optimization problems into three subproblems makes design and analysis of heuristic algorithms tractable. A unique feature of our work is to compare the performance of our algorithms with optimal solutions analytically and validate our results experimentally, not to compare the performance of heuristic algorithms among themselves only experimentally. The harmonic system partitioning and processor allocation scheme is used, which divides a multiprocessor computer into clusters of equal sizes and schedules tasks of similar sizes together to increase processor utilization. A three-level energy/time/power allocation scheme is adopted for a given schedule, such that the schedule length is minimized by consuming given amount of energy or the energy consumed is minimized without missing a given deadline. The performance of our heuristic algorithms is analyzed, and accurate performance bounds are derived. Simulation data which validate our analytical results are also presented. It is found that our analytical results provide very accurate estimation of the expected normalized schedule length and the expected normalized energy consumption and that our heuristic algorithms are able to produce solutions very close to optimum.
Similar content being viewed by others
References
Aydin H, Melhem R, Mossé D, Mejía-Alvarez P (2004) Power-aware scheduling for periodic real-time tasks. IEEE Trans Comput 53(5):584–600
Bansal N, Kimbrel T, Pruhs K (2004) Dynamic speed scaling to manage energy and temperature. In: Proceedings of the 45th IEEE symposium on foundation of computer science, pp 520–529
Barnett JA (2005) Dynamic task-level voltage scheduling optimizations. IEEE Trans Comput 54(5):508–520
Benini L, Bogliolo A, De Micheli G (2000) A survey of design techniques for system-level dynamic power management. IEEE Trans Very Large Scale Integr (VLSI) Syst 8(3):299–316
Bunde DP (2006) Power-aware scheduling for makespan and flow. In: Proceedings of the 18th ACM symposium on parallelism in algorithms and architectures, pp 190–196
Chan H-L, Chan W-T, Lam T-W, Lee L-K, Mak K-S, Wong PWH (2007) Energy efficient online deadline scheduling. In: Proceedings of the 18th ACM–SIAM symposium on discrete algorithms, pp 795–804
Chandrakasan AP, Sheng S, Brodersen RW (1992) Low-power CMOS digital design. IEEE J Solid-State Circuits 27(4):473–484
Feng W-C (2005) The importance of being low power in high performance computing. CTWatch Quarterly 1(3). Los Alamos National Laboratory, August
Gara A et al (2005) Overview of the Blue Gene/L system architecture. IBM J Res Dev 49(2/3):195–212
Graham RL (1969) Bounds on multiprocessing timing anomalies. SIAM J Appl Math 2:416–429
Graham SL, Snir M, Patterson CA (eds) (2005) Getting up to speed: the future of supercomputing. Committee on the Future of Supercomputing, National Research Council, National Academies Press, Washington
Hong I, Kirovski D, Qu G, Potkonjak M, Srivastava MB (1999) Power optimization of variable-voltage core-based systems. IEEE Trans Comput-Aided Des Integr Circuits Syst 18(12):1702–1714
Im C, Ha S, Kim H (2004) Dynamic voltage scheduling with buffers in low-power multimedia applications. ACM Trans Embed Comput Syst 3(4):686–705
Intel (2004) Enhanced Intel SpeedStep technology for the Intel Pentium M processor—white paper, March
Krishna CM, Lee Y-H (2003) Voltage-clock-scaling adaptive scheduling techniques for low power in hard real-time systems. IEEE Trans Comput 52(12):1586–1593
Kwon W-C, Kim T (2005) Optimal voltage allocation techniques for dynamically variable voltage processors. ACM Trans Embed Comput Syst 4(1):211–230
Lee Y-H, Krishna CM (2003) Voltage-clock scaling for low energy consumption in fixed-priority real-time systems. Real-Time Syst 24(3):303–317
Li K (2008) Performance analysis of power-aware task scheduling algorithms on multiprocessor computers with dynamic voltage and speed. IEEE Trans Parallel Distrib Syst 19(11):1484–1497
Li M, Yao FF (2006) An efficient algorithm for computing optimal discrete voltage schedules. SIAM J Comput 35(3):658–671
Li M, Liu BJ, Yao FF (2006) Min-energy voltage allocation for tree-structured tasks. J Comb Optim 11:305–319
Li M, Yao AC, Yao FF (2006) Discrete and continuous min-energy schedules for variable voltage processors. Proc Natl Acad Sci USA 103(11):3983–3987
Lorch JR, Smith AJ (2004) PACE: a new approach to dynamic voltage scaling. IEEE Trans Comput 53(7):856–869
Mahapatra RN, Zhao W (2005) An energy-efficient slack distribution technique for multimode distributed real-time embedded systems. IEEE Trans Parallel Distrib Syst 16(7):650–662
Qu G (2001) What is the limit of energy saving by dynamic voltage scaling. In: Proceedings of the international conference on computer-aided design, pp 560–563
Quan G, Hu XS (2007) Energy efficient DVS schedule for fixed-priority real-time systems. ACM Trans Embed Comput Syst 6(4): Article no 29
Rusu C, Melhem R, Mossé D (2002) Maximizing the system value while satisfying time and energy constraints. In: Proceedings of the 23rd IEEE real-time systems symposium, pp 256–265
Shin D, Kim J (2003) Power-aware scheduling of conditional task graphs in real-time multiprocessor systems. In: Proceedings of the international symposium on low power electronics and design, pp 408–413
Shin D, Kim J, Lee S (2001) Intra-task voltage scheduling for low-energy hard real-time applications. IEEE Des Test Comput 18(2):20–30
Stan MR, Skadron K (2003) Guest editors’ introduction: power-aware computing. IEEE Comput 36(12):35–38
Unsal OS, Koren I (2003) System-level power-aware design techniques in real-time systems. Proc IEEE 91(7):1055–1069
Venkatachalam V, Franz M (2005) Power reduction techniques for microprocessor systems. ACM Comput Surv 37(3):195–237
Weiser M, Welch B, Demers A, Shenker S (1994) Scheduling for reduced CPU energy. In: Proceedings of the 1st USENIX symposium on operating systems design and implementation, pp 13–23
Yang P, Wong C, Marchal P, Catthoor F, Desmet D, Verkest D, Lauwereins R (2001) Energy-aware runtime scheduling for embedded-multiprocessor SOCs. IEEE Des Test Comput 18(5):46–58
Yao F, Demers A, Shenker S (1995) A scheduling model for reduced CPU energy. In: Proceedings of the 36th IEEE symposium on foundations of computer science, pp 374–382
Yun H-S, Kim J (2003) On energy-optimal voltage scheduling for fixed-priority hard real-time systems. ACM Trans Embed Comput Syst 2(3):393–430
Zhai B, Blaauw D, Sylvester D, Flautner K (2004) Theoretical and practical limits of dynamic voltage scaling. In: Proceedings of the 41st design automation conference, pp 868–873
Zhu D, Melhem R, Childers BR (2003) Scheduling with dynamic voltage/speed adjustment using slack reclamation in multiprocessor real-time systems. IEEE Trans Parallel Distrib Syst 14(7):686–700
Zhu D, Mossé D, Melhem R (2004) Power-aware scheduling for AND/OR graphs in real-time systems. IEEE Trans Parallel Distrib Syst 15(9):849–864
Zhuo J, Chakrabarti C (2008) Energy-efficient dynamic task scheduling algorithms for DVS systems. ACM Trans Embed Comput Syst 7(2): Article no 17
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Li, K. Energy efficient scheduling of parallel tasks on multiprocessor computers. J Supercomput 60, 223–247 (2012). https://doi.org/10.1007/s11227-010-0416-0
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-010-0416-0