Abstract
In this paper, we study the problem of scheduling tasks on a distributed system, with the aim to simultaneously minimize energy consumption and makespan subject to the deadline constraints and the tasks’ memory requirements. A total of eight heuristics are introduced to solve the task scheduling problem. The set of heuristics include six greedy algorithms and two naturally inspired genetic algorithms. The heuristics are extensively simulated and compared using an simulation test-bed that utilizes a wide range of task heterogeneity and a variety of problem sizes. When evaluating the heuristics, we analyze the energy consumption, makespan, and execution time of each heuristic. The main benefit of this study is to allow readers to select an appropriate heuristic for a given scenario.
Similar content being viewed by others
References
Nathuji R, Isci C, Gobratov E (2007) Exploiting platform heterogeneity for power efficient data centers. In: ICAC ’07: proceedings of the fourth international conference on autonomic computing, 2007
Heath T, Diniz B, Carrera EV, Wagner M Jr, Bianchini R (2005) Energy conservation in heterogeneous server clusters. In: PPoPP ’05: proceedings of the tenth ACM SIGPLAN symposium on principles and practice of parallel programming. ACM Press, New York, pp 186–195
Qiu Q, Pedram M (1999) Dynamic power management based on continuous-time Markov decision processes. In: In design automation conference, 1999, pp 555–561
Weiser M, Welch B, Demers A, Shenker S (1994) Scheduling for reduced cpu energy. In: OSDI ’94: proceedings of the 1st USENIX conference on operating systems design and implementation. USENIX Association, Berkeley, pp 13–23
Abdelzaher TF, Lu C (2001) Schedulability analysis and utilization bounds for highly scalable real-time services. In: In IEEE real-time technology and applications symposium, 2001, pp 15–25
Bianchini R, Rajamony R (2004) Power and energy management for server systems. IEEE Comput 37(11):68–74
Elnozahy EM, Kistler M, Rajamony R (2002) Energy-efficient server clusters. In: Proceedings of the 2nd workshop on power-aware computing systems, 2002, pp 179–196
Pinheiro E, Bianchini R, Carrera EV, Heath T (2001) Load balancing and unbalancing for power and performance in cluster-based systems. In: Workshop on compilers and operating systems for low power, 2001
Hsu C-H, Kremer U (2003) The design, implementation, and evaluation of a compiler algorithm for cpu energy reduction. In: Proceedings of ACM SIGPLAN conference on programming language design and implementation. ACM Press, New York, pp 38–48
Hwang C-H, Wu AC-H (1997) A predictive system shutdown method for energy saving of event-driven computation. In: 1997 Design automation conference, 1997, pp 28–32
Kirovski D, Potkonjak M (1997) System-level synthesis of low-power hard real-time systems. In: DAC ’97: proceedings of the 34th annual design automation conference. ACM Press, New York, pp 697–702
Dick RP, Jha NK (1997) MOGAC: A multiobjective genetic algorithm for the co-synthesis of hardware-software embedded systems. IEEE Trans Comput-Aided Des Integr Circuits Syst 17:920–935
Schmitz MT, Al-Hashimi BM (2001) Considering power variations of DVS processing elements for energy minimisation in distributed systems. In: Proc. 14th int’l symp. on system synthesis, 2001, pp 250–255
Dick RP, Jha NK (2004) COWLS: Hardware-software cosynthesis of wireless low-power distributed embedded client-server systems. IEEE Trans Comput-Aided Des Integr Circuits Syst 23(1):2–16
Hassani MM, Berangi R (2007) Improving the COWLS algorithm for hardware software co-synthesis of wireless client-server systems using preference vectors and peak power information. In: Proc. int’l conference on computer systems and technologies
Dave BP, Lakshminarayana G, Jha NK (1997) COSYN: hardware-software co-synthesis of embedded systems. In: DAC ’97: proceedings of the 34th annual design automation conference. ACM Press, New York, pp 703–708
Chedid W, Yu C (2005) Power analysis and optimization techniques for energy efficient computer systems. Adv Comput 63:129–164
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
Khan SU, Ahmad I (2009) A cooperative game theoretical technique for joint optimization of energy consumption and response time in computational grids. IEEE Trans Parallel Distrib Syst 21(4):346–360
Ahmad I, Ranka S, Khan SU (2008) Using game theory for scheduling tasks on multi-core processors for simultaneous optimization of performance and energy. In: 22nd IEEE international parallel and distributed processing symposium, 2008, pp 1–6
Luenberger DG (1984) Linear and nonlinear programming. Addison-Wesley, Reading
Li YA, Antonio JK, Siegel HJ, Tan M, Watson DW (1997) Determining the execution time distribution for a data parallel program in a heterogeneous computing environment. J Parallel Distrib Comput 44(1):35–52
Ali S, Siegel HJ, Maheswaran M, Ali S, Hensgen D (2000) Task execution time modeling for heterogeneous computing systems. In: HCW ’00: proceedings of the 9th heterogeneous computing workshop. IEEE Computer Society, Washington, p 185
Papoulis A (1984) Probability, random variables, and stochastic processes. McGraw-Hill, New York
Yu Y, Prasanna VK (2002) Power-aware resource allocation for independent tasks in heterogeneous real-time systems. In: ICPADS ’02: proceedings of the 9th international conference on parallel and distributed systems. IEEE Computer Society, Washington, pp 341–348
Khan SU, Ardil C (2009) Energy efficient resource allocation in distributed computing systems. In: International conference on distributed, high-performance and grid computing, 2009, pp 667–673
Bodie Z, Marcus A, Kane A (2007) Essentials of investments. McGraw-Hill, New York
Moler CB (2004) Numerical computing with Matlab. Society for Industrial Mathematics
Khan SU, Ardil C (2009) On the joint optimization of performance and power consumption in data centers. In: International conference on distributed, high-performance and grid computing, 2009, pp 660–660
Siegel HJ, Ali S (2000) Techniques for mapping tasks to machines in heterogeneous computing systems. J Syst Archit 46(8):627–639
Ali S, Siegel HJ, Maheswaran M, Hensgen D, Ali S (2000) Representing task and machine heterogeneities for heterogeneous computing systems. Tamkang J Sci Eng 3(3):195–207
Khan SU, Ahmad I (2010) Comparison and analysis of ten static heuristics-based internet data replication techniques. J Parallel Distrib Comput 68(2):113–136
Khan SU, Ahmad I (2007) A cooperative game theoretical replica placement technique. In: 2007 International conference on parallel and distributed systems
Khan SU (2009) A self-adaptive weighted sum technique for the joint optimization of performance and power consumption in data centers. In: 22nd International conference on parallel and distributed computing and communication systems, 2009
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Lindberg, P., Leingang, J., Lysaker, D. et al. Comparison and analysis of eight scheduling heuristics for the optimization of energy consumption and makespan in large-scale distributed systems. J Supercomput 59, 323–360 (2012). https://doi.org/10.1007/s11227-010-0439-6
Published:
Issue Date:
DOI: https://doi.org/10.1007/s11227-010-0439-6