Soft Computing

, Volume 22, Issue 10, pp 3271–3285 | Cite as

A genetic algorithm-based method for optimizing the energy consumption and performance of multiprocessor systems

  • Anju S. Pillai
  • Kaumudi Singh
  • Vijayalakshmi Saravanan
  • Alagan Anpalagan
  • Isaac Woungang
  • Leonard Barolli
Foundations

Abstract

In a multiprocessor system, scheduling is an NP-hard problem, and solving it using conventional techniques demands the support of evolutionary algorithms such as genetic algorithms (GAs). Handling the energy consumption issues, while delivering the desired performance for a system, is also a challenging task. In order to achieve these goals, this paper proposes a GA-based method for optimizing the energy consumption and performance of multiprocessor systems using a weighted-sum approach. A performance optimization algorithm with two different selection operators, namely the proportional roulette wheel selection (PRWS) and the rank-based roulette wheel selection (RRWS), is proposed, and the impact of adding elitism in the GA is investigated. Simulation results show that for a specific task graph, using the considered selection operators with elitism yields, respectively, 16.80, 17.11 and 17.82% reduction in energy consumption with a deviation in finish time of 2.08, 2.01 and 1.76 ms when an equal weight factor of 0.5 is considered. This confirms that the selection operator RRWS is superior to PRWS. It is also seen that using elitism enhances the optimization procedure. For a given specific workload, the average percentage reduction in energy consumption with varying weight vector is in the range 12.57–19.51%, with a deviation in finish time of the schedule varying between 1.01 and 2.77 ms.

Keywords

Multi-objective optimization Genetic algorithm (GA) Multiprocessor systems Task graph Task scheduling Energy optimization Schedule length minimization 

Notes

Compliance with ethical standards

Conflict of interest

The authors declare that they have no conflict of interest.

Human and animal rights

This article does not contain any studies with human participants or animals performed by any of the authors.

References

  1. Aupy G, Benoit A (2012) Approximation algorithms for energy, reliability and make-span optimization. CoRR-Computing Research Repository. arXiv:1210.4673
  2. Bambha N, Bhattacharyya SS (2000) A joint power/performance optimization algorithm for multiprocessor systems using a period graph construct. In: Proceedings 13th international symposium on system synthesis, Madrid, pp 91–97Google Scholar
  3. Bonyadi MR, Moghaddam ME (2009) Bipartite genetic algorithm for multi-processor task scheduling. Int J Parallel Program 37(5):462–487CrossRefMATHGoogle Scholar
  4. Bougeret M, Dutot P-F, Trystram D, Jansen K, Robenek C (2015) Improved approximation algorithms for scheduling parallel jobs on identical clusters. Theor Comput Sci 600(4):70–85MathSciNetCrossRefMATHGoogle Scholar
  5. Chen G, Huang K, Knoll A (2014) Energy optimization for real-time multiprocessor system-on-chip with optimal DVFS and DPM combination. ACM Trans Embed Comput Syst 13(3s):1–21CrossRefGoogle Scholar
  6. Chinnery D, Keutzer K (2007) Overview of the factors affecting the power consumption. In: Closing the power gap between ASIC & custom tools and techniques for low power design. Springer, US, pp 11–53Google Scholar
  7. Erbas C, Cerav-Erbas S, Pimentel AD (2006) Multiobjective optimization and evolutionary algorithms for the application mapping problem in multiprocessor system-on-chip design. IEEE Trans Evol Comput 10(3):358–374CrossRefGoogle Scholar
  8. Friese RD (2016) Efficient genetic algorithm encoding for large-scale multi-objective resource allocation. In: IEEE international parallel and distributed processing symposium workshops (IPDPSW), Chicago, IL, pp 1360–1369Google Scholar
  9. Garshasbi MS, Effat parvar M (2013) Task scheduling of parallel heterogeneous multi-processor systems using genetic algorithm. Int J Comput Appl 61(9):23–27Google Scholar
  10. Hasan MZ, Bird M (2011) Energy reductions for embedded processors in reconfigurable hardware. In: 2011 IEEE international conference on electro/information technology, Mankato, MN, 2011, pp 1–8Google Scholar
  11. Hashemian N, Diallo C, Vizvári B (2014) Make-span minimization for parallel machines scheduling with multiple availability constraints. Ann Oper Res 213(1):173–186MathSciNetCrossRefMATHGoogle Scholar
  12. He C, Lin H (2017) Notes on a hierarchical scheduling problem on identical machines. Inf Process Lett 120:6–10MathSciNetCrossRefMATHGoogle Scholar
  13. Hou ESH, Ansari N, Ren Hong (1994) A genetic algorithm for multiprocessor scheduling. IEEE Trans Parallel Distrib Syst 5(2):113–120CrossRefGoogle Scholar
  14. Kashan AH, Keshmiry M, Dahooie JH, Abbasi-Pooya A (2016) A simple yet effective grouping evolutionary strategy (GES) algorithm for scheduling parallel machines. J Neural Comput Appl 1–14. doi: 10.1007/s00521-016-2789-3
  15. Kessaci Y, Mezmaz M, Melab N, Talbi E-G, Tuyttens D (2011) Parallel evolutionary algorithms for energy aware scheduling. In: Bouvry P, Gonzalez-Velez H, Kołodziej J (eds) Intelligent decisions systems in large-scale distributed environments, studies in computational intelligence series, Chap 4, vol 362. Springer, Berlin, pp 75–100Google Scholar
  16. Konar A (2005) Computational intelligence: principles, techniques and applications. Springer, New YorkCrossRefMATHGoogle Scholar
  17. Kowalczyk D, Leus R (2016) An exact algorithm for parallel machine scheduling with conflicts. J Sched 20(4):355–372Google Scholar
  18. Li K(2016a) Energy-efficient task scheduling on multiple heterogeneous computers: algorithms, analysis, and performance evaluation. IEEE Trans Sustain Comput 1(1):7–19Google Scholar
  19. Li K (2016b) Energy and time constrained task scheduling on multiprocessor computers with discrete speed levels. J Parallel Distrib Comput 95:15–28Google Scholar
  20. Li K (2017) Scheduling parallel tasks with energy and time constraints on multiple many core processors in a cloud computing environment. Future Gener Comput Syst. doi: 10.1016/j.future.2017.01.010
  21. Miao L, Qi Y, Hou D, Wu Cl, Dai YH (2009) Energy saving task scheduling for heterogeneous CMP system based on multi-objective fuzzy genetic algorithm. In: IEEE international conference on systems, man and cybernetics, San Antonio, TX, pp 3923–3927Google Scholar
  22. Norazizi Sham Mohd Sayuti M, Indrusiak LS, Garcia-Ortiz A (2013) An optimization algorithm for minimizing energy dissipation in NoC-based hard real-time embedded systems. In: Proceedings of the 21st international conference on real-time networks and systems, 2013. ACM, New York, NY, USA, pp 3–12Google Scholar
  23. Oklapi E, Deubzer M, Schmidhuber S, Lalo E, Mottok J (2014) Optimization of real-time multicore systems reached by a genetic algorithm approach for runnable sequencing. In: International conference on applied electronics, Pilsen, pp 233–238Google Scholar
  24. Page AJ, Naughton TJ (2005) Dynamic task scheduling using genetic algorithms for heterogeneous distributed computing. In: 19th IEEE international parallel and distributed processing symposium, p 189Google Scholar
  25. Pillai P, Shin KG (2001) Real-time dynamic voltage scaling for low-power embedded operating systems. In: Symposium on operating systems principles, pp 89–102Google Scholar
  26. Razali NM, Geraghty JJ (2011) Genetic algorithm performance with different selection strategies in solving travelling salesman problem. In: Proceedings of world congress of engineering, vol 2Google Scholar
  27. Ren H, Hou ESH, Ansari N (1994) A genetic algorithm for multiprocessor scheduling. IEEE Trans Parallel Distrib Syst 5:113–120. doi: 10.1109/71.265940 CrossRefGoogle Scholar
  28. Sanati B, Cheng AMK (2016) LBBA: an efficient online benefit-aware multiprocessor scheduling for QoS via online choice of approximation algorithms. Future Genern Comput Syst 59:125–135CrossRefGoogle Scholar
  29. Shakya S, Prajapati U (2015) Task scheduling in grid computing using genetic algorithm. In: 2015 International conference on green computing and internet of things (ICGCIoT), Noida, pp 1245–1248Google Scholar
  30. Singh R (2016) An optimized task duplication based scheduling in parallel system. Iint J Intell Syst Appl 8:26–37Google Scholar
  31. Singh K, Pillai AS (2014a) Energy optimization of embedded processors using elitist genetic algorithm. In: International conference on communication and computing (ICC 2014), Alpha College of Engineering, Bangalore, India, June 12–14, pp 237–245Google Scholar
  32. Singh K, Pillai AS (2014b) Schedule length optimization by elite-genetic algorithm using rank based selection for multiprocessor systems. In: International conference on embedded systems (ICES 2014), Amrita School of Engineering, Coimbatore, India, July pp 86–91Google Scholar
  33. Standard Task Graph Set, http://www.kasahara.elec.waseda.ac.jp/schedule/index.html. Last visited May 8, 2017
  34. Sun H, Stolf P, Pierson J-M (2017) Spatio-temporal thermal-aware scheduling for homogeneous high-performance computing datacenters. Future Gener Comput Syst 71:157–170CrossRefGoogle Scholar
  35. The Genetic and Evolutionary Algorithms Toolbox, http://www.pg.gda.pl/~mkwies/dyd/geadocu/algselct.html. Last visited May 8, 2017
  36. Theys MD, Braun TD, Siegal HJ, Maciejewski AA, Kwok Y-K (2001) Mapping tasks onto distributed heterogeneous computing systems using a genetic algorithm approach, chapter 6. Wiley, New York, pp 135–178Google Scholar
  37. Yeap GK (1998) Practical low power digital VLSI design. Kluwer, NorwellCrossRefGoogle Scholar
  38. Zhang W, Xie H, Cao B, Cheng AMK (2014) Energy-aware real-time task scheduling for heterogeneous multiprocessors with particle swarm optimization algorithm. Math Probl Eng 2014(2014):287475-1–287475-9. doi: 10.1155/2014/287475
  39. Zomaya AY, Teh Y-H (2001) Observations on using genetic algorithms for dynamic load-balancing. IEEE Trans Parallel Distrib Syst 12(9):899–911CrossRefGoogle Scholar

Copyright information

© Springer-Verlag GmbH Germany 2017

Authors and Affiliations

  • Anju S. Pillai
    • 1
  • Kaumudi Singh
    • 2
  • Vijayalakshmi Saravanan
    • 3
  • Alagan Anpalagan
    • 4
  • Isaac Woungang
    • 5
  • Leonard Barolli
    • 6
  1. 1.Department of Electrical and Electronics Engineering, Amrita School of Engineering, Amrita Vishwa VidyapeethamAmrita UniversityCoimbatoreIndia
  2. 2.Department of Electronic System EngineeringIndian Institute of ScienceBangaloreIndia
  3. 3.Department of Electrical and Computer EngineeringUniversity of WaterlooWaterlooCanada
  4. 4.Department of Electrical and Computer EngineeringRyerson UniversityTorontoCanada
  5. 5.Department of Computer ScienceRyerson UniversityTorontoCanada
  6. 6.Department of Information and Communication Engineering Faculty of Information EngineeringFukuoka Institute of Technology (FIT)FukuokaJapan

Personalised recommendations