Skip to main content

Advertisement

Log in

Dynamic Scheduling for Heterogeneous Multicores

  • Original Research
  • Published:
SN Computer Science Aims and scope Submit manuscript

Abstract

Heterogeneous multicore systems can help adherence to design goals by providing a diverse set of hardware components to meet application requirements. Each core may also have tunable hardware that can reconfigured for different applications. However, scheduling becomes difficult in the presence of tunable hardware due to the additional constraint that an application must be scheduled to a core that offers the best configuration, based on the application’s requirements, to maximize the benefit of the tunable hardware. The scheduling decision can be made by exploring and evaluating each hardware configuration in the design space exhaustively or through the use of a heuristic to evaluate a subset of the design space. However, exhaustive and heuristic approaches do not scale well with the number of available hardware configurations. To improve upon exhaustive and heuristic approaches, in this paper, we present a dynamic scheduling methodology that uses machine learning to schedule applications to the application’s respective best core for reduced energy consumption for a system with configurable caches. We use an artificial neural network (ANN) to train our predictive model, using hardware counters, to predict the best core and a tuning heuristic to determine best configuration on non-best cores. If the best core is busy, our scheduler considers alternative idle cores, or the application is stalled depending on which decision is energy advantageous. Our experiments show that our proposed system can achieve a total energy savings of approximately 33% and 2.5% compared to a fixed-cache, base system when using a configurable instruction and data cache, respectively, while remaining competitive and exhibiting better scaling properties compared to systems adopting a heuristic approach.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8

Similar content being viewed by others

Availability of data and material

Not applicable.

References

  1. Abreu Silva B, Cuminato LA, Delbem ACB, Diniz PC, Bonato V. Application-oriented cache memory configuration for energy efficiency in multi-cores. IET Comput Dig Tech. 2015;9(1):73–81.

    Article  Google Scholar 

  2. Alsafrjalani MH, Adegbija T. Tasat: thermal-aware scheduling and tuning algorithm for heterogeneous and configurable embedded systems. In: Proceedings of the 2018 on Great Lakes Symposium on VLSI, association for computing machinery, New York, NY, USA, GLSVLSI18; 2018. pp. 75–80. https://doi.org/10.1145/3194554.3194576.

  3. Alsafrjalani MH, Ross AG. Dynamic scheduling for reduced energy in configuration-subsetted heterogeneous multicore systems. In: 2014 12th IEEE international conference on embedded and ubiquitous computing; 2014. pp. 17–24.

  4. Austin T, Larson E, Ernst D. Simplescalar: an infrastructure for computer system modeling. Computer. 2002;35(2):59–67.

    Article  Google Scholar 

  5. Baital K, Chakrabarti A. Various approaches for high throughput and energy efficient scheduling of real-time tasks in multicore systems. In: 2019 IEEE international symposium on smart electronic systems (iSES) (Formerly iNiS); 2019. pp. 402–05. https://doi.org/10.1109/iSES47678.2019.00098.

  6. Becchi M, Crowley P. Dynamic thread assignment on heterogeneous multiprocessor architectures. In: Proceedings of the 3rd conference on computing frontiers, association for computing machinery, New York, NY, USA, CF ’06; 2006. pp. 29–40. https://doi.org/10.1145/1128022.1128029.

  7. Berral JL, Gavalda R, Torres J. Adaptive scheduling on power-aware managed data-centers using machine learning. In: 2011 IEEE/ACM 12th international conference on grid computing; 2011. pp. 66–73.

  8. Edun A, Vazquez R, Gordon-Ross A, Stitt G. Dynamic scheduling on heterogeneous multicores. In: 2019 design, automation test in europe conference exhibition (DATE); 2019. pp. 1685–1690.

  9. EEMBC. Eembc autobench benchmark suite. 2013. https://www.eembc.org/.

  10. Elgawi O, Mutawa AM. Low power deep-learning architecture for mobile iot intelligence. In: 2020 IEEE International Conference on Informatics, IoT, and Enabling Technologies (ICIoT); 2020. pp. 43–7. https://doi.org/10.1109/ICIoT48696.2020.9089642.

  11. Goh CK, Teoh EJ, Tan KC. A hybrid evolutionary approach for heterogeneous multiprocessor scheduling. Soft Comput. 2009;13(8–9):833–46. https://doi.org/10.1007/s00500-008-0356-2.

    Article  Google Scholar 

  12. Gupta M, Bhargava L, Indu S. Artificial neural network based task scheduling for heterogeneous systems. In: 2020 3rd international conference on emerging technologies in computer engineering: machine learning and internet of things (ICETCE); 2020. pp. 74–9. https://doi.org/10.1109/ICETCE48199.2020.9091745.

  13. Huang Y, Liu W, Li M, Chen P, Yang L, Xiao C, Ye Y. User experience-enhanced and energy-efficient task scheduling on heterogeneous multi-core mobile systems. In: 2018 IEEE 24th international conference on parallel and distributed systems (ICPADS); 2018. pp. 283–90. https://doi.org/10.1109/PADSW.2018.8645024.

  14. Kim B. Mixed-signal circuits and architectures for energy-efficient in-memory and in-sensor computation of artificial neural networks. In: 2019 32nd IEEE international system-on-chip conference (SOCC); 2019. pp. 475–78. https://doi.org/10.1109/SOCC46988.2019.1570571922.

  15. Koufaty D, Reddy D, Hahn S. Bias scheduling in heterogeneous multi-core architectures. In: Proceedings of the 5th European conference on computer systems, association for computing machinery, New York, NY, USA, EuroSys ’10; 2010. p 125–138. https://doi.org/10.1145/1755913.1755928.

  16. Kumar R, Tullsen DM, Ranganathan P, Jouppi NP, Farkas KI. Single-isa heterogeneous multi-core architectures for multithreaded workload performance. In: Proceedings 31st annual international symposium on computer architecture; 2004. pp. 64–75.

  17. Lakshminarayana NB, Lee J, Kim H. Age based scheduling for asymmetric multiprocessors. In: Proceedings of the conference on high performance computing networking, storage and analysis; 2009. pp. 1–12.

  18. Li CV, Petrucci V, Mossé D. Predicting thread profiles across core types via machine learning on heterogeneous multiprocessors. In: 2016 VI Brazilian symposium on computing systems engineering (SBESC); 2016. pp. 56–62.

  19. Lim MY, Porterfield A, Fowler R. Softpower: fine-grain power estimations using performance counters. In: Proceedings of the 19th ACM international symposium on high performance distributed computing, association for computing machinery, New York, NY, USA, HPDC ’10; 2010. pp. 308–311 https://doi.org/10.1145/1851476.1851517.

  20. Lin J, Cui D, Peng Z, Li Q, He J. A two-stage framework for the multi-user multi-data center job scheduling and resource allocation. IEEE Access. 2020;8:197863–74. https://doi.org/10.1109/ACCESS.2020.3033557.

    Article  Google Scholar 

  21. Liu D, Spasic J, Chen G, Stefanov T. Energy-efficient mapping of real-time streaming applications on cluster heterogeneous mpsocs. In: 2015 13th IEEE symposium on embedded systems for real-time multimedia (ESTIMedia); 2015. pp. 1–10.

  22. Liu M, Song T, Gui G. Deep cognitive perspective: Resource allocation for noma-based heterogeneous iot with imperfect sic. IEEE Internet Things J. 2019;6(2):2885–94. https://doi.org/10.1109/JIOT.2018.2876152.

    Article  Google Scholar 

  23. Lukefahr A, Padmanabha S, Das R, Sleiman FM, Dreslinski R, Wenisch TF, Mahlke S. Composite cores: Pushing heterogeneity into a core. In: 2012 45th annual IEEE/ACM international symposium on microarchitecture; 2012. pp. 317–328.

  24. Marahatta A, Xin Q, Chi C, Zhang F, Liu Z. Pefs: Ai-driven prediction based energy-aware fault-tolerant scheduling scheme for cloud data center. IEEE Trans Sustain Comput. 2020;2020:1–1. https://doi.org/10.1109/TSUSC.2020.3015559.

    Article  Google Scholar 

  25. MATLAB. version 9.7.0.1216025 (R2019b). The MathWorks Inc., Natick, Massachusetts. 2019.

  26. Munawar W, Khdr H, Pagani S, Shafique M, Chen J, Henkel J. Peak power management for scheduling real-time tasks on heterogeneous many-core systems. In: 2014 20th IEEE international conference on parallel and distributed systems (ICPADS); 2014. pp. 200–209.

  27. Naithani A, Eyerman S, Eeckhout L. Reliability-aware scheduling on heterogeneous multicore processors. In: 2017 IEEE international symposium on high performance computer architecture (HPCA); 2017. pp. 397–408.

  28. Rawlins M, Gordon-Ross A. An application classification guided cache tuning heuristic for multi-core architectures. In: 17th Asia and South Pacific design automation conference; 2012. pp. 23–28.

  29. Reinman G, Jouppi N. Cacti 2.0: an integrated cache timing and power model. 2002.

  30. Salamy H, Aslan S, Methukumalli D. Task scheduling on multicores under energy and power constraints. In: 2013 26th IEEE Canadian conference on electrical and computer engineering (CCECE); 2013. pp. 1–4.

  31. Sarikaya R, Isci C, Buyuktosunoglu A. Program behavior prediction using a statistical metric model. Sigmetrics Perform Eval Rev. 2010;38(1):371–2. https://doi.org/10.1145/1811099.1811092.

    Article  MATH  Google Scholar 

  32. Sayadi H, Patel N, Sasan A, Homayoun H. Machine learning-based approaches for energy-efficiency prediction and scheduling in composite cores architectures. In: 2017 IEEE international conference on computer design (ICCD); 2017. pp. 129–136.

  33. Shelepov D, Fedorova A. Scheduling on heterogeneous multicore processors using architectural signatures. In: Proceedings of the workshop on the interaction between operating systems and computer architecture; 2008. pp. 21–25.

  34. Shelepov D, Saez Alcaide JC, Jeffery S, Fedorova A, Perez N, Huang ZF, Blagodurov S, Kumar V. Hass: a scheduler for heterogeneous multicore systems. Sigops Oper Syst Rev. 2009;43(2):66–75. https://doi.org/10.1145/1531793.1531804.

    Article  Google Scholar 

  35. Sherwood T, Sair S, Calder B. Phase tracking and prediction. In: Proceedings of the 30th annual international symposium on computer architecture, association for computing machinery, New York, NY, USA, ISCA ’03; 2003. pp. 336–349. https://doi.org/10.1145/859618.859657.

  36. Singh K, Bhadauria M, McKee SA. Real time power estimation and thread scheduling via performance counters. Sigarch Comput Archit News. 2009;37(2):46–55. https://doi.org/10.1145/1577129.1577137.

    Article  Google Scholar 

  37. Song J, Xie G, Li R, Chen X. An efficient scheduling algorithm for energy consumption constrained parallel applications on heterogeneous distributed systems. In: 2017 IEEE international symposium on parallel and distributed processing with applications and 2017 IEEE international conference on ubiquitous computing and communications (ISPA/IUCC); 2017. pp. 32–39. https://doi.org/10.1109/ISPA/IUCC.2017.00015.

  38. Spasic J, Liu D, Stefanov T. Energy-efficient mapping of real-time applications on heterogeneous mpsocs using task replication. In: 2016 international conference on hardware/software codesign and system synthesis (CODES+ISSS); 2016. pp. 1–10.

  39. Tang Q, Gupta SKS, Varsamopoulos G. Energy-efficient thermal-aware task scheduling for homogeneous high-performance computing data centers: A cyber-physical approach. IEEE Trans Parallel Distrib Syst. 2008;19(11):1458–72.

    Article  Google Scholar 

  40. Tavana MK, Hajkazemi MH, Pathak D, Savidis I, Homayoun H. Elasticcore: enabling dynamic heterogeneity with joint core and voltage/frequency scaling. In: 2015 52nd ACM/EDAC/IEEE design automation conference (DAC); 2015. pp. 1–6.

  41. Tsai P, Chen C, Sanchez D. Adaptive scheduling for systems with asymmetric memory hierarchies. In: 2018 51st Annual IEEE/ACM international symposium on microarchitecture (MICRO); 2018. pp. 641–654.

  42. Van Craeynest K, Jaleel A, Eeckhout L, Narvaez P, Emer J. Scheduling heterogeneous multi-cores through performance impact estimation (pie). In: 2012 39th annual international symposium on computer architecture (ISCA); 2012. pp. 213–24.

  43. Vazquez R, Gordon-Ross A, Stitt G. Energy prediction for cache tuning in embedded systems. In: 2019 IEEE 37th international conference on computer design (ICCD); 2019. pp. 630–37.

  44. Wong A, Lin ZQ, Chwyl B. Attonets: compact and efficient deep neural networks for the edge via human-machine collaborative design. In: 2019 IEEE/CVF conference on computer vision and pattern recognition workshops (CVPRW); 2019. pp. 684–93,.https://doi.org/10.1109/CVPRW.2019.00095.

  45. Xie W, Zhang C, Zhang Y, Hu C, Jiang H, Wang Z. An energy-efficient fpga-based embedded system for cnn application. In: 2018 IEEE international conference on electron devices and solid state circuits (EDSSC); 2018. pp. 1–2. https://doi.org/10.1109/EDSSC.2018.8487057.

  46. Ye L, Ye J, Yanagisawa M, Shi Y. A zero-gating processing element design for low-power deep convolutional neural networks. In: 2019 IEEE Asia Pacific conference on circuits and systems (APCCAS); 2019. pp. 317–20. https://doi.org/10.1109/APCCAS47518.2019.8953157.

  47. Zhang C, Vahid F, Najjar W. A highly configurable cache architecture for embedded systems. In: 30th annual international symposium on computer architecture, 2003. Proceedings; 2003. pp. 136–46.

  48. Zhang Y, Wang Y, Wang H. Energy-efficient task scheduling for dvfs-enabled heterogeneous computing systems using a linear programming approach. In: 2016 IEEE 35th international performance computing and communications conference (IPCCC); 2016. pp. 1–8. https://doi.org/10.1109/PCCC.2016.7820647.

  49. Zhou J, Wei T, Chen M, Yan J, Hu XS, Ma Y. Thermal-aware task scheduling for energy minimization in heterogeneous real-time mpsoc systems. IEEE Trans Comput Aided Des Integr Circuits Syst. 2016;35(8):1269–82. https://doi.org/10.1109/TCAD.2015.2501286.

    Article  Google Scholar 

Download references

Acknowledgements

The authors would like to thank Shantanu Gulgule and Mohamad Hammam Alsafrjalani for their work assisting in the preparation of the manuscript.

Funding

This work was supported by the National Science Foundation (CNS0953447 and CNS-1718033). Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ruben Vazquez.

Ethics declarations

Conflict of interest

The authors declare that they have no conflict of interest.

Code availability

Not applicable.

Additional information

Publisher's Note

Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Vazquez, R., Edun, A., Gordon-Ross, A. et al. Dynamic Scheduling for Heterogeneous Multicores. SN COMPUT. SCI. 2, 486 (2021). https://doi.org/10.1007/s42979-021-00909-w

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s42979-021-00909-w

Keywords

Navigation