Skip to main content
Log in

Two-level utilization-based processor allocation for scheduling moldable jobs

  • Published:
The Journal of Supercomputing Aims and scope Submit manuscript

Abstract

Most modern parallel programs are written with the moldable property. However, most existing parallel computing systems treat such parallel programs as rigid jobs for scheduling, resulting in two drawbacks. The first is inflexibility and inefficiency in processor allocation, leading to resource fragmentation and thus poor performance. The second is about usage inconvenience, requiring users to figure out the best number of processors for executing a job. As HPC as a service emerges, moldable job scheduling has become an important research issue for achieving both high performance and user convenience. This paper presents our research work on developing new processor allocation approaches for moldable job scheduling based on two-level resource utilization calculation, preemptive job execution, and dual-criteria iterative improvement. A series of simulation experiments have been conducted to evaluate the proposed approaches and compare them to previous methods. The experimental results demonstrate significant performance improvement in terms of average turnaround time.

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
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14
Fig. 15
Fig. 16

Similar content being viewed by others

Notes

  1. https://www.netlib.org/benchmark/hpl/.

  2. https://www.top500.org/.

  3. https://www.cs.huji.ac.il/labs/parallel/workload/.

References

  1. Feitelson DG, Rudolph L, Schweigelshohn U, Sevcik K, Wong P (1997) Theory and practice in parallel job scheduling. Lect Notes Comput Sci 1291:1–34

    Article  Google Scholar 

  2. Kessler C, Melot N, Eitschberger P, Keller J (2013) Crown scheduling: energy-efficient resource allocation, mapping and discrete frequency scaling for collections of malleable streaming tasks. In: Proceedings of the 23rd international workshop on power and timing modeling, optimization and simulation

  3. Wu X, Loiseau P (2015). Algorithms for scheduling deadline-sensitive malleable tasks. In: Proceedings of the fifty-third annual Allerton conference

  4. Asghar S, Aubanel E, Bremner D (2013) A dynamic moldable job scheduling based parallel SAT solver. Proceedings of the international conference on parallel processing, pp 110–119

  5. AbdelBaky M, Parashar M, Kim H, JordanKirk EJ, Sachdeva V, Sexton J, Jamjoom H, Shae ZY, Pencheva G, Tavakoli R, Wheeler MF (2012) Enabling high performance computing as a service. IEEE Comput 45:72–80

    Article  Google Scholar 

  6. Bagga S, Garg D, Arora A (2014) Moldable load scheduling using demand adjustable policies. Proceedings of the international conference on advances in computing communications and informatics

  7. Huang KC, Huang TC, Tsai MJ, Chang HY, Tung YH (2013) Moldable job scheduling for HPC as a service with application speedup model and execution time information. J Converg Sect A Comput Commun 4(4):14–22

    Google Scholar 

  8. Wu S, Tuo Q, Jin H, Yan C, Weng Q (2015) HRF: a resource allocation scheme for moldable jobs. In: Proceedings of the 12th ACM international conference on computing frontiers

  9. Kwon OH, Kim J, Hong SJ, Lee SG (1997) Real-time job scheduling in hypercube systems. In: Proceedings of international conference on parallel processing, p 166

  10. Kwon OH, Chwa KY (1998) An algorithm for scheduling jobs in hypercube systems. IEEE Trans Parallel Distrib Syst 9(9):856–860

    Article  Google Scholar 

  11. Ni LM, Turner SW, Cheng BHC (1995) Contention-free 2D-mesh cluster allocation in hypercubes. IEEE Trans Comput 44(8):1051–1055

    Article  Google Scholar 

  12. Sharma DD, Pradhan DK (1995) Processor allocation in hypercube multicomputers: fast and efficient strategies for cubic and noncubic allocation. IEEE Trans Parallel Distrib Syst 6(10):1108–1122

    Article  Google Scholar 

  13. Mu’alem AW, Feitelson DG (2001) Utilization, predictability, workloads, and user runtime estimate in scheduling the IBM SP2 with backfilling. IEEE Trans Parallel Distrib Syst 12(6):529–543

    Article  Google Scholar 

  14. Feitelson DG, Rudolph L (1995) Parallel job scheduling: issues and approaches. In: Proceedings of job scheduling strategies for parallel processing, pp 1–18

  15. Lifka D (1995) The ANL/IBM SP scheduling system. In: Proceedings of the job scheduling strategies for parallel processing, pp 295–303

  16. Skovira J, Chan W, Zhou H, Lifka D (1996) The EASY-LoadLeveler API project. In: Proceedings of the job scheduling strategies for parallel processing, pp 41–47

  17. Feitelson, D.G., Weil, A.M. (1998). Utilization and predictability in scheduling the IBM SP2 with backfilling. In: Proceedings of the 12th Int’l parallel processing symposium, pp 542–546

  18. Srinivasan S, Kettimuthu R, Subrarnani V, Sadayappan P (2002) Characterization of backfilling strategies for parallel job scheduling. In: Proceeding of the conference on parallel processing (ICPP), pp 514–522

  19. Wong AKL, Goscinski AM (2007) Evaluating the EASY-backfill job scheduling of static workloads on clusters. In: Proceedings of the IEEE international conference in cluster computing, pp 64–73

  20. Wong AK, Goscinski AM (2008) The impact of under-estimated length of jobs on EASY-backfill scheduling. In: Proceedings of the IEEE parallel, distributed and network-based processing

  21. Feitelson DG (2005) Experimental analysis of the root causes of performance evaluation results: a backfilling case study. IEEE Trans Parallel Distrib Syst 16:175–182

    Article  Google Scholar 

  22. Shmueli E, Feitelson DG (2005) Backfilling with lookahead to optimize the packing of parallel jobs. J Parallel Distrib Comput 65:1090–1107

    Article  Google Scholar 

  23. Jackson DB, Snell Q, Clement MJ (2001) Core algorithms of the Maui scheduler. In: Proceedings of the job scheduling strategies for parallel processing

  24. Feitelson DG, Rudolph L, Schwiegelshohn U (2005) Parallel job scheduling—a status report. In: Proceedings of the job scheduling strategies for parallel processing, pp 1–16

  25. Tsafrir D, Etsion Y, Feitelson DG (2007) Backfilling using system-generated predictions rather than user runtime estimates. IEEE Trans Parallel Distrib Syst 18:789–803

    Article  Google Scholar 

  26. Chiang SH, Vasupongayya S (2008) Design and potential performance of goal-oriented job scheduling policies for parallel computer workloads. IEEE Trans Parallel Distrib Syst 19:1642–1656

    Article  Google Scholar 

  27. Stanzani S, Cóbe R, Fialho J, Iope R, Gomes M, Baruchi A, Amaral J (2019) Towards a strategy for performance prediction on heterogeneous architectures. In: Senger H et al (eds) High performance computing for computational science—VECPAR 2018. Lecture notes in computer science, vol 11333, pp 247–253

  28. Shen C, Tong W, Choo KR et al (2018) Performance prediction of parallel computing models to analyze cloud-based big data applications. Cluster Comput 21:1439–1454

    Article  Google Scholar 

  29. Martínez V, Serpa M, Dupros F, Padoin EL, Navaux P (2018). Performance prediction of acoustic wave numerical kernel on Intel Xeon Phi processor. In: Mocskos E, Nesmachnow S (eds) High performance computing. CARLA 2017. Communications in computer and information science, vol 796, pp 101–110

  30. Caron E, Chouhan PK, Desprez F (2004) Deadline scheduling with priority for client-server systems on the grid. In: Proceedings of the fifth IEEE/ACM international workshop on grid computing

  31. Le G, Xu K, Song J (2013) Dynamic resource provisioning and scheduling with deadline constraint in elastic cloud. In: Proceedings of the international conference on service science

  32. Perret Q, Charlemagne G, Sotiriadis S, Bessis N (2013) A deadline scheduler for jobs in distributed systems. In: Proceedings of the 27th international conference on advanced information networking and applications workshops

  33. Zhao W, Ramamritham K, Stankovic JA (1987) Scheduling tasks with resource requirements in hard real-time systems. IEEE Trans Softw Eng 13(5):564–577

    Article  Google Scholar 

  34. Yoon H, Ryu M (2015) Guaranteeing end-to-end deadlines for AUTOSAR-based automotive software. Int J Automot Technol 16(4):635–644

    Article  Google Scholar 

  35. Li J, Luo Z, Ferry D, Agrawal K, Gill C, Lu C (2014) Global EDF scheduling for parallel real-time tasks. Real Time Syst 51(4):395–439

    Article  Google Scholar 

  36. Li J, Xiong M, Lee VCS, Shu L, Li G (2013) Workload efficient deadline and period assignment for maintaining temporal consistency under EDF. IEEE Trans Comput 62:1–14

    Article  MathSciNet  Google Scholar 

  37. Herrtwich RG (1990) An introduction to real-time scheduling. ICSI Technique report, TR-90-035

  38. Pop F (2013) Scheduling of sporadic tasks with deadline constrains in cloud environments. In: Proceedings of the IEEE 27th international conference on advanced information networking and applications

  39. Srinivasan S, Krishnamoorthy S, Sadayappan P (2003) A robust scheduling strategy for moldable scheduling of parallel jobs. In: Proceedings of the 5th IEEE international conference on cluster computing, pp 92–99

  40. Srinivasan S, Subramani V, Kettimuthu R, Holenarsipur P, Sadayappan P (2002) Effective selection of partition sizes for moldable scheduling of parallel jobs. Lect Notes Comput Sci 2552:174–183

    Article  Google Scholar 

  41. Cirne W, Berman F (2000) Adaptive selection of partition size for supercomputer requests. Lect Notes Comput Sci 1911:187–207

    Article  Google Scholar 

  42. Cirne W, Berman F (2002) Using moldability to improve the performance of supercomputer jobs. J Parallel Distrib Comput 62:1571–1601

    Article  Google Scholar 

  43. Sabin G, Lang M, Sadayappan P (2006) Moldable parallel job scheduling using job efficiency: an iterative approach. In: Proceedings of the job scheduling strategies for parallel processing, Saint Malo, France

  44. Caniou Y, Charrier G, Desprez F (2011) Evaluation of reallocation heuristics for moldable tasks in computational grids. In: Proceedings of the 9th Australasian symposium on parallel and distributed computing

  45. Huang KC (2006) Performance evaluation of adaptive processor allocation policies for moldable parallel batch jobs. In: Proceedings of the 3th workshop on grid technologies and applications

  46. Beheshti Roui M, Shekofteh SK, Noori H et al (2020) Efficient scheduling of streams on GPGPUs. J Supercomput. https://doi.org/10.1007/s11227-020-03209-x

    Article  Google Scholar 

  47. Chen Q, Oh J, Kim S et al (2019) Design of an adaptive GPU sharing and scheduling scheme in container-based cluster. Cluster Comput. https://doi.org/10.1007/s10586-019-02969-3

    Article  Google Scholar 

  48. Choi HJ, Son DO, Kang SG et al (2013) An efficient scheduling scheme using estimated execution time for heterogeneous computing systems. J Supercomput 65:886–902

    Article  Google Scholar 

  49. Chen L, Ye D, Zhang G (2013). Online scheduling on a CPU–GPU cluster. In: Chan TH, Lau LC, Trevisan L (eds) Theory and applications of models of computation, TAMC 2013, Lecture notes in computer science, vol 7876, pp 1–9

  50. Zhou Z, Li F, Zhu H et al (2019) An improved genetic algorithm using greedy strategy toward task scheduling optimization in cloud environments. Neural Comput Appl. https://doi.org/10.1007/s00521-019-04119-7

    Article  Google Scholar 

  51. Mortazavi-Dehkordi M, Zamanifar K (2020) Efficient deadline-aware scheduling for the analysis of Big Data streams in public Cloud. Cluster Comput 23:241–263

    Article  Google Scholar 

  52. Baskiyar S, Abdel-Kader R (2010) Energy aware DAG scheduling on heterogeneous systems. Cluster Comput 13:373–383

    Article  Google Scholar 

  53. Mei J, Li K, Li K (2014) Energy-aware task scheduling in heterogeneous computing environments. Cluster Comput 17:537–550

    Article  Google Scholar 

  54. Maurya AK, Modi K, Kumar V et al (2019) Energy-aware scheduling using slack reclamation for cluster systems. Cluster Comput. https://doi.org/10.1007/s10586-019-02965-7

    Article  Google Scholar 

  55. Kleinrock L, Huang JH (1992) On parallel processing systems: Amdahl’s law generalized and some results on optimal design. IEEE Trans Softw Eng 18(5):434–447

    Article  Google Scholar 

  56. Downey AB (1997a) A model for speedup of parallel programs. UC Berkeley EECS Technical Report No. UCB/CSD-97-933

  57. Downey AB (1997b) A parallel workload model and its implications for processor allocation. In: Proceedings of the 6th international symposium on high performance distributed computing

  58. Lewis TG, Rewini HE (1992) Introduction to parallel computing. Prentice-Hall International, Upper Saddle River

    MATH  Google Scholar 

  59. Radulescu A, Nicolescu C, van Gemund AJC, Jonker PP (2001) CPR: mixed task and data parallel scheduling for distributed systems. In: Proceedings of the 15th international parallel and distributed processing symposium

  60. Memeti S, Pllana S, Binotto A et al (2019) Using meta-heuristics and machine learning for software optimization of parallel computing systems: a systematic literature review. Computing 101:893–936

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Kuo-Chan Huang.

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

Wu, YJ., Yu, ST., Lai, KC. et al. Two-level utilization-based processor allocation for scheduling moldable jobs. J Supercomput 76, 10212–10239 (2020). https://doi.org/10.1007/s11227-020-03246-6

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-020-03246-6

Keywords

Navigation