A Practical Approach for Energy Efficient Scheduling in Multicore Environments by Combining Evolutionary and YDS Algorithms with Faster Energy Estimation

  • Zorana Banković
  • Umer Liqat
  • Pedro López-García
Conference paper
Part of the IFIP Advances in Information and Communication Technology book series (IFIPAICT, volume 458)


Energy efficient scheduling and allocation in multicore environments is a well-known NP-hard problem. Nevertheless approximated solutions can be efficiently found by heuristic algorithms, such as evolutionary algorithms (EAs). However, these algorithms have some drawbacks that hinder their applicability: typically they are very slow, and if the space of the feasible solutions is too restricted, they often fail to provide a viable solution. In this paper we propose an approach that overcomes these issues. The approach is based on a custom EA that is fed with predicted information provided by an existing static analysis about the energy consumed by tasks. This solves the time inefficiency problem. In addition, when this algorithm fails to produce a feasible solution, we resort to a modification of the well-known YDS algorithm that we have performed, well adapted to the multicore environment and to the situations when the static power becomes the predominant part. This way, we propose a combined approach that produces an energy efficient scheduling in reasonable time, and always finds a viable solution. The approach has been tested on multicore XMOS chips, but it can easily be adapted to other multicore environments as well. In the tested scenarios the modified YDS can improve the original one up to 20%, while our EA can save 55 − 90% more energy on average than the modified YDS.


Scheduling energy efficiency multicore systems evolutionary algorithms YDS 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Albers, S., Müller, F., Schmelzer, S.: Speed scaling on parallel processors. In: Proc. of SPAA 2007, pp. 289–298. ACM, USA (2007)Google Scholar
  2. 2.
    Banković, Z., López-García, P.: Energy efficient allocation and scheduling for Dvfs-Enabled multicore environments using a multiobjective evolutionary algorithm. In: Proc. of GECCO 2015. ACM (2015, to appear)Google Scholar
  3. 3.
    Banković, Z., Lopez-Garcia, P.: Stochastic vs. Deterministic Evolutionary Algorithm-based Allocation and Scheduling for XMOS Chips. Neurocomputing 150, 82–89 (2015)CrossRefGoogle Scholar
  4. 4.
    Deb, K., Pratap, A., Agarwal, S., Meyarivan, T.: A fast elitist multi-objective genetic algorithm: NSGA-II. IEEE Transactions on Evolutionary Computation 6, 182–197 (2000)CrossRefGoogle Scholar
  5. 5.
    Gaál, B.: Multi-Level Genetic Algorithms and Expert System for Health Promotion. PhD thesis, Univ. of Panonia, Faculty of Information Technology, 12 (2009)Google Scholar
  6. 6.
    Gerards, M.E.T., et al.: Analytic clock frequency selection for global DVFS. In: Proc. of PDP 2014, pp. 512–519 (2014)Google Scholar
  7. 7.
    Jejurikar, R., Pereira, C., Gupta, R.: Leakage aware dynamic voltage scaling for real-time embedded systems. In: Proc. of DAC 2004, pp. 275–280. ACM (2004)Google Scholar
  8. 8.
    Kerrison, S., Eder, K.: Measuring and modelling the energy consumption of multithreaded, multi-core embedded software. ICT Energy Letters, 18–19 (July 2014)Google Scholar
  9. 9.
    Liqat, U., Georgiou, K., Kerrison, S., Lopez-Garcia, P., Hermenegildo, M.V., Gallagher, J.P., Eder, K.: Inferring Energy Consumption at Different Software Levels: ISA vs. LLVM IR. Technical report, ENTRA Project, Appendix D3.2.4 of Deliverable D3.2 (April 2014).
  10. 10.
    Liqat, U., Kerrison, S., Serrano, A., Georgiou, K., Lopez-Garcia, P., Grech, N., Hermenegildo, M.V., Eder, K.: Energy consumption analysis of programs based on XMOS ISA-level models. In: Gupta, G., Peña, R. (eds.) LOPSTR 2013, LNCS 8901. LNCS, vol. 8901, pp. 72–90. Springer, Heidelberg (2014)Google Scholar
  11. 11.
    Mezmaz, M., et al.: A bi-objective hybrid genetic algorithm to minimize energy consumption and makespan for precedence-constrained applications using dynamic voltage scaling. In: Proc. IEEE CEC 2010, pp. 1–8. IEEE (2010)Google Scholar
  12. 12.
    Miyoshi, A., et al.: Critical power slope: Understanding the runtime effects of frequency scaling. In: Proc. of ICS 2002, pp. 35–44. ACM, USA (2002)Google Scholar
  13. 13.
    Serrano, A., Lopez-Garcia, P., Hermenegildo, M.: Resource Usage Analysis of Logic Programs via Abstract Interpretation Using Sized Types. TPLP, ICLP 2014 Special Issue 14(4-5), 739–754 (2014)zbMATHGoogle Scholar
  14. 14.
    Watt, D.: Programming XC on XMOS Devices. XMOS Limited (2009)Google Scholar
  15. 15.
    Yao, F., Demers, A., Shenker, S.: A scheduling model for reduced cpu energy. In: 2013 IEEE 54th Annual Symposium on Foundations of Computer Science, 374 (1995)Google Scholar

Copyright information

© IFIP International Federation for Information Processing 2015

Authors and Affiliations

  • Zorana Banković
    • 1
  • Umer Liqat
    • 1
  • Pedro López-García
    • 1
    • 2
  1. 1.IMDEA Software InstituteMadridSpain
  2. 2.Spanish Council for Scientific Research (CSIC)MadridSpain

Personalised recommendations