Skip to main content
Log in

An Analytical Review and Performance Measures of State-of-Art Scheduling Algorithms in Heterogenous Computing Enviornment

  • Review article
  • Published:
Archives of Computational Methods in Engineering Aims and scope Submit manuscript

Abstract

Task scheduling and resource utilization have always been among the most critical issues for high performance in heterogeneous computing. The heterogeneity of computation costs on a given set of computing elements and the communication costs among computing elements increase the complexity of the scheduling problem. Extensive research proves that the list-based task scheduling algorithms generate the most efficient schedules for complex workflow applications in the heterogeneous computing environment. The workflow applications comprise thousands of interconnected tasks with dependencies. In the last decades, various list-based scheduling algorithms have been proposed to achieve some kinds of performance objectives such as minimization of makespan and energy consumption and maximization of resource utilization and reliability. In this article, various list-based workflow scheduling algorithms have been reviewed from the last two decades with the assumption of heterogeneous computing systems being used as the underlying computing infrastructure. This review process categorizes the algorithms based on scheduling objectives. For a better analysis of the algorithms, each algorithm is compared with other algorithms based on its objectives, merits, comparison metrics, workload type, experimental scale, experimental environment, and results compared. Finally, experimental analysis of seven state-of-art algorithms has been conducted on randomly generated workflow to understand the working of list-scheduling algorithms. The main purpose of this article is to give proper direction to new researchers who are willing to work in workflow scheduling in heterogeneous computing environments.

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

Similar content being viewed by others

Data Availability

The studies are conducted on already available data and materials.

References

  1. Feitelson DG, Rudolph L, Schwiegelshohn U, Sevcik KC, Wong P (1997) Theory and practice in parallel job scheduling. Workshop on job scheduling strategies for parallel processing. Springer, Berlin, Heidelberg, pp 1–34

    Chapter  Google Scholar 

  2. Yu J, Ramamohanarao K, Buyya R (2009) Deadline/budget-based scheduling of workflows on utility grids. Market-Oriented Grid Utility Comput 200(9):427–450

    Article  Google Scholar 

  3. Hagras T, Janecek J (2004) A high performance, low complexity algorithm for compile-time task scheduling in heterogeneous systems. 18th international parallel and distributed processing symposium, 2004: proceedings. IEEE, p 107

    Chapter  Google Scholar 

  4. AlEbrahim S, Ahmad I (2017) Task scheduling for heterogeneous computing systems. J Supercomput 73(6):2313–2338

    Article  Google Scholar 

  5. Chu WW, Lan MT, Hellerstein J (1984) Estimation of intermodule communication (IMC) and its applications in distributed processing systems. IEEE Trans Comput 100(8):691–699

    Article  Google Scholar 

  6. Palis MA, Liou JC, Rajasekaran S, Shende S, Wei DS (1995) Online scheduling of dynamic trees. Parallel Process Lett 5(04):635–646

    Article  Google Scholar 

  7. Zhang W, Korf RE (1995) Performance of linear-space search algorithms. Artif Intell 79(2):241–292

    Article  MathSciNet  Google Scholar 

  8. Kokash N (2005) An introduction to heuristic algorithms. Department of Informatics and Telecommunications, pp 1–8

    Google Scholar 

  9. Gerasoulis A, Yang T (1992) A comparison of clustering heuristics for scheduling directed acyclic graphs on multiprocessors. J Parallel Distrib Comput 16(4):276–291

    Article  MathSciNet  Google Scholar 

  10. Bittencourt LF, Madeira ER (2008) A performance-oriented adaptive scheduler for dependent tasks on grids. Concurrency Comput: Practice Exp 20(9):1029–1049

    Article  Google Scholar 

  11. Liou JC, Palis MA (1996, October) An efficient task clustering heuristic for scheduling workflows on multiprocessors. In: Workshop on resource management, symposium on parallel and distributed processing, pp. 152–156

  12. Nath R, Nagaraju A, Sreevathsa MN (2020) Multi-workflow concurrent scheduling in a heterogeneous computing cluster. J Sci Ind Res (JSIR) 79(06):517–525

    Google Scholar 

  13. Topcuoglu H, Hariri S, Wu MY (2002) Performance-effective and low-complexity task scheduling for heterogeneous computing. IEEE Trans Parallel Distrib Syst 13(3):260–274

    Article  Google Scholar 

  14. Sinnen O, Sousa L (2001) Exploiting unused time slots in list scheduling considering communication contention. European conference on parallel processing. Springer, Berlin, Heidelberg, pp 166–170

    Google Scholar 

  15. Hagras T, Janecek J (2003) A simple scheduling heuristic for heterogeneous computing environments. Parallel and distributed computing, international symposium on. IEEE Computer Society, pp 104–104

    Google Scholar 

  16. Ahmad I, Kwok YK (1998) On exploiting task duplication in parallel program scheduling. IEEE Trans Parallel Distrib Syst 9(9):872–892

    Article  Google Scholar 

  17. Darbha S, Agrawal DP (1998) Optimal scheduling algorithm for distributed-memory machines. IEEE Trans Parallel Distrib Syst 9(1):87–95

    Article  Google Scholar 

  18. Ahmed I, Kwork Y (1997) A comparison of task-duplication-based algorithms for scheduling parallel programs to message-passing systems. In Proceedings of th 11th International Symposium of High-Performance Computing Systems, pp. 39–50

  19. Papadimitriou CH, Yannakakis M (1990) Towards an architecture-independent analysis of parallel algorithms. SIAM J Comput 19(2):322–328

    Article  MathSciNet  Google Scholar 

  20. Sakellariou R, Zhao H (2004) A hybrid heuristic for workflow scheduling on heterogeneous systems. 18th international parallel and distributed processing symposium, 2004: proceedings. IEEE, p 111

    Chapter  Google Scholar 

  21. Daoud MI, Kharma N (2006) Efficient compile-time task scheduling for heterogeneous distributed computing systems. 12th Int Conf Parallel Distrib Syst (ICPADS’06) 1:9

    Google Scholar 

  22. Shi Z, Jeannot E, Dongarra JJ (2006) Robust task scheduling in non-deterministic heterogeneous computing systems. 2006 IEEE international conference on cluster computing. IEEE, pp 1–10

    Google Scholar 

  23. Yang CH, Lee P, Chung YC (2007) Improving static task scheduling in heterogeneous and homogeneous computing systems. 2007 International conference on parallel processing (ICPP 2007). IEEE, pp 45–45

    Chapter  Google Scholar 

  24. Ilavarasan E, Thambidurai P (2007) Low complexity performance effective task scheduling algorithm for heterogeneous computing environments. J Comput Sci 3(2):94–103

    Article  Google Scholar 

  25. Kim SC, Lee S, Hahm J (2007) Push-pull: deterministic search-based workflow scheduling for heterogeneous cluster systems. IEEE Trans Parallel Distrib Syst 18(11):1489–1502

    Article  Google Scholar 

  26. Daoud MI, Kharma N (2008) A high performance algorithm for static task scheduling in heterogeneous distributed computing systems. J Parallel Distrib Comput 68(4):399–409

    Article  Google Scholar 

  27. Zhou L, Shixin S (2008) Scheduling algorithm based on critical tasks in heterogeneous environments. J Syst Eng Electron 19(2):398–404

    Article  Google Scholar 

  28. Tang X, Li K, Padua D (2009) Communication contention in APN list scheduling algorithm. Sci China Ser F: Inf Sci 52(1):59–69

    Article  MathSciNet  Google Scholar 

  29. Bittencourt LF, Sakellariou R, Madeira ER (2010) Workflow scheduling using a lookahead variant of the heterogeneous earliest finish time algorithm. 2010 18th Euromicro conference on parallel, distributed and network-based processing. IEEE, pp 27–34

    Chapter  Google Scholar 

  30. Chitra P, Rajaram R, Venkatesh P (2011) Application and comparison of hybrid evolutionary multiobjective optimization algorithms for solving task scheduling problem on heterogeneous systems. Appl Soft Comput 11(2):2725–2734

    Article  Google Scholar 

  31. Li K (2012) Scheduling precedence constrained tasks with reduced processor energy on multiprocessor computers. IEEE Trans Comput 61(12):1668–1681

    Article  MathSciNet  Google Scholar 

  32. Wang S, Li K, Mei J, Xiao G, Li K (2017) A reliability-aware task scheduling algorithm based on replication on heterogeneous computing systems. J Grid Comput 15(1):23–39

    Article  Google Scholar 

  33. Shetti KR, Fahmy SA, Bretschneider T (2013) Optimization of the HEFT Algorithm for a CPU-GPU Environment. 2013 International conference on parallel and distributed computing, application and technoologies. IEEE, pp 212–218

    Google Scholar 

  34. Zheng W, Sakellariou R (2013) Stochastic workflow scheduling using a Monte Carlo approach. J Parallel Distrib Comput 73(12):1673–1689

    Article  Google Scholar 

  35. Dai Y, Zhang X (2014) A synthesized heuristic task scheduling algorithm. Sci World J 2014:1–9

    Google Scholar 

  36. Arabnejad H, Barbosa JG (2013) List scheduling algorithm for heterogeneous systems by an optimistic cost table. IEEE Trans Parallel Distrib Syst 25(3):682–694

    Article  Google Scholar 

  37. Huang KC, Tsai YL, Liu HC (2015) Task ranking and allocation in list-based workflow scheduling on parallel computing platform. J Supercomput 71(1):217–240

    Article  Google Scholar 

  38. Zhou N, Qi D, Wang X, Zheng Z, Lin W (2017) A list scheduling algorithm for heterogeneous systems based on a critical node cost table and pessimistic cost table. Concurrency and Computation: Practice and Experience 29(5):e3944

    Article  Google Scholar 

  39. Wang G, Wang Y, Liu H, Guo H (2016) HSIP: A novel task scheduling algorithm for heterogeneous computing. Sci Programm. 2016:1–11

    Google Scholar 

  40. Beaumont O, Eyraud-Dubois L, Kumar S (2017) Approximation proofs of a fast and efficient list scheduling algorithm for task-based runtime systems on multicores and gpus. 2017 IEEE international parallel and distributed processing symposium (IPDPS). IEEE, pp 768–777

    Chapter  Google Scholar 

  41. Tariq R, Aadil F, Malik MF, Ejaz S, Khan MU, Khan MF (2018) Directed acyclic graph based task scheduling algorithm for heterogeneous systems. Proceedings of SAI intelligent systems conference. Springer, Cham, pp 936–947

    Google Scholar 

  42. Ranaweera S, Agrawal DP (2000) A task duplication based scheduling algorithm for heterogeneous systems. Proceedings 14th international parallel and distributed processing symposium: IPDPS 2000. IEEE, pp 445–450

    Google Scholar 

  43. Dogan A, Ozguner R (2002) LDBS: a duplication based scheduling algorithm for heterogeneous computing systems. Proceedings international conference on parallel processing. IEEE, pp 352–359

    Chapter  Google Scholar 

  44. Kwok YK, Ahmad I (1999) Benchmarking and comparison of the task graph scheduling algorithms. J Parallel Distrib Comput 59(3):381–422

    Article  Google Scholar 

  45. Park GL, Shirazi B, Marquis J (1997) DFRN: A new approach for duplication based scheduling for distributed memory multiprocessor systems. Proceedings 11th international parallel processing symposium. IEEE, pp 157–166

    Chapter  Google Scholar 

  46. Wang H, Sinnen O (2018) List-scheduling versus cluster-scheduling. IEEE Trans Parallel Distrib Syst 29(8):1736–1749

    Article  Google Scholar 

  47. Raji M, Nikseresht M (2022) UMOTS: an uncertainty-aware multi-objective genetic algorithm-based static task scheduling for heterogeneous embedded systems. J Supercomput 78(1):279–314

    Article  Google Scholar 

  48. Jia ZH, Pan L, Liu X, Li XJ (2021) A novel cloud workflow scheduling algorithm based on stable matching game theory. J Supercomput 77(10):11597–11624

    Article  Google Scholar 

  49. Abualigah L, Alkhrabsheh M (2022) Amended hybrid multi-verse optimizer with genetic algorithm for solving task scheduling problem in cloud computing. J Supercomput 78(1):740–765

    Article  Google Scholar 

  50. Wang L, Wang C, Wang H (2022) Improved scheduling algorithm for synchronous data flow graphs on a homogeneous multi-core systems. Algorithms 15(2):56

    Article  Google Scholar 

  51. Xian-Fu M, Wei-Wei L (2010) A workflow scheduling algorithm based on selected duplication of precedent tasks. J Comput Aid Design Comput Graphics 6.

  52. Radulescu A, Van Gemund AJ (2000) Fast and effective task scheduling in heterogeneous systems. Proceedings 9th heterogeneous computing workshop (HCW 2000) (Cat. No. PR00556). IEEE, pp 229–238

    Chapter  Google Scholar 

  53. Ahmad W, Alam B, Malik S (2019) Performance analysis of list scheduling algorithms by random synthetic workflows. In Proceedings of 2nd international conference on advanced computing and software engineering (ICACSE).

  54. Zhang L, Ai M, Tan R, Man J, Deng X, Li K (2023) Efficient prediction of makespan matrix workflow scheduling algorithm for heterogeneous cloud environments. J Grid Comput 21(4):75

    Article  CAS  Google Scholar 

  55. Mikram H, El Kafhali S, Saadi Y (2024) HEPGA: A new effective hybrid algorithm for scientific workflow scheduling in cloud computing environment. Simul Model Pract Theory 130:102864

    Article  Google Scholar 

  56. Beaty SJ (1992) Lookahead scheduling. ACM SIGMICRO Newslett 23(1–2):256–259

    Article  Google Scholar 

  57. Shirazi B, Wang M, Pathak G (1990) Analysis and evaluation of heuristic methods for static task scheduling. J Parallel Distrib Comput 10(3):222–232

    Article  Google Scholar 

  58. Sih GC, Lee EA (1993) A compile-time scheduling heuristic for interconnection-constrained heterogeneous processor architectures. IEEE Trans Parallel Distrib Syst 4(2):175–187

    Article  Google Scholar 

  59. Fan H, Deng H, Ye X (2017) Critical node dynamic scheduling algorithm for a multiprocessor system. Revista de la Facultad de Ingenieria 32(1):555–563

    Google Scholar 

  60. Hwang JJ, Chow YC, Anger FD, Lee CY (1989) Scheduling precedence graphs in systems with interprocessor communication times. SIAM J Comput 18(2):244–257

    Article  MathSciNet  Google Scholar 

  61. Kwok YK, Ahmad I (1996) Dynamic critical-path scheduling: an effective technique for allocating task graphs to multiprocessors. IEEE Trans Parallel Distrib Syst 7(5):506–521

    Article  Google Scholar 

  62. Zahran M (2017) Heterogeneous computing: here to stay. Commun ACM 60(3):42–45

    Article  Google Scholar 

  63. Bleuse R, Gautier T, Lima JV, Mounié G, Trystram D (2014) Scheduling data flow program in XKaapi: a new affinity based algorithm for heterogeneous architectures. European conference on parallel processing. Springer, Cham, pp 560–571

    Google Scholar 

  64. Lawler EL, Lenstra JK, Kan AHR, Shmoys DB (1993) Sequencing and scheduling: algorithms and complexity. Handbooks Oper Res Manage Sci 4:445–522

    Article  Google Scholar 

  65. Son JH, Kim JS, Kim MH (2005) Extracting the workflow critical path from the extended well-formed workflow schema. J Comput Syst Sci 70(1):86–106

    Article  MathSciNet  Google Scholar 

  66. Ullman JD (1975) NP-complete scheduling problems. J Comput Syst Sci 10(3):384–393

    Article  MathSciNet  Google Scholar 

  67. Hagras T, Janecek J (2004) An approach to compile-time task scheduling in heterogeneous computing systems. Workshops on mobile and wireless networking/high performance scientific, engineering computing/network design and architecture/optical networks control and management/ad hoc and sensor networks/compil. IEEE, pp 182–189

    Chapter  Google Scholar 

  68. Arif MS, Iqbal Z, Tariq R, Aadil F, Awais M (2019) Parental prioritization-based task scheduling in heterogeneous systems. Arab J Sci Eng 44(4):3943–3952

    Article  Google Scholar 

  69. Canon LC, Jeannot E, Sakellariou R, Zheng W (2008) Comparative evaluation of the robustness of workflow scheduling heuristics. Grid Comput. Springer, Boston, pp 73–84

    Chapter  Google Scholar 

  70. Tang X, Li K, Liao G, Li R (2010) List scheduling with duplication for heterogeneous computing systems. J Parallel Distrib Comput 70(4):323–329

    Article  Google Scholar 

  71. Qasim M, Iqbal T, Munir EU, Tziritas N, Khan SU, Yang LT (2017) Dynamic mapping of application workflows in heterogeneous computing environments. 2017 IEEE International Parallel and Distributed Processing Symposium Workshops (IPDPSW). IEEE, pp 462–471

    Chapter  Google Scholar 

  72. Ahmad W, Alam B (2020) An efficient list scheduling algorithm with task duplication for scientific big data workflow in heterogeneous computing environments. Concurrency Computation: Practice Exp:e5987

  73. Durillo JJ, Nae V, Prodan R (2014) Multi-objective energy-efficient workflow scheduling using list-based heuristics. Futur Gener Comput Syst 36:221–236

    Article  Google Scholar 

  74. Nassiri S, Naghibzadeh M (2017) Scheduling hybrid workflows using extended look-ahead approach in utility grid. 2017 9th international conference on information and knowledge technology (IKT). IEEE, pp 54–61

    Chapter  Google Scholar 

  75. Hu F, Quan X, Lu C (2018, April) A schedule method for parallel applications on heterogeneous distributed systems with energy consumption constraint. In Proceedings of the 3rd international conference on multimedia systems and signal processing, pp. 134–141

  76. Xiao X, Xie G, Li R, Li K (2016) Minimizing schedule length of energy consumption constrained parallel applications on heterogeneous distributed systems. 2016 IEEE trustcom/BigDataSE/ISPA. IEEE, pp 1471–1476

    Chapter  Google Scholar 

  77. Hu Y, Li J, He L (2020) A reformed task scheduling algorithm for heterogeneous distributed systems with energy consumption constraints. Neural Comput Appl 32(10):5681–5693

    Article  Google Scholar 

  78. Liang B, Dong X, Wang Y, Zhang X (2020) A low-power task scheduling algorithm for heterogeneous cloud computing. J Supercomput 76:1–25

    Article  Google Scholar 

  79. Deb K (2001) Multi-objective optimization using evolutionary algorithms, vol 16. John Wiley & Sons

    Google Scholar 

  80. Chankong V, Haimes YY (2008) Multiobjective decision making: theory and methodology. Courier Dover Publications

    Google Scholar 

  81. Chlamtac I, Conti M, Liu JJN (2003) Mobile ad hoc networking: imperatives and challenges. Ad Hoc Netw 1(1):13–64

    Article  Google Scholar 

  82. Zhang L, Li K, Li C, Li K (2017) Bi-objective workflow scheduling of the energy consumption and reliability in heterogeneous computing systems. Inf Sci 379:241–256

    Article  ADS  Google Scholar 

  83. Qin Y, Wang H, Yi S, Li X, Zhai L (2020) An energy-aware scheduling algorithm for budget-constrained scientific workflows based on multi-objective reinforcement learning. J Supercomput 76(1):455–480

    Article  Google Scholar 

  84. Han P, Du C, Chen J, Ling F, Du X (2020) Cost and makespan scheduling of workflows in clouds using list multiobjective optimization technique. J Syst Architect 101837

  85. Zitzler E, Thiele L (1999) Multiobjective evolutionary algorithms: a comparative case study and the strength Pareto approach. IEEE Trans Evol Comput 3(4):257–271

    Article  Google Scholar 

  86. Arabnejad H, Barbosa JG (2014) A budget constrained scheduling algorithm for workflow applications. J Grid Comput 12(4):665–679

    Article  Google Scholar 

  87. Deb K (2014) Multi-objective optimization. Search methodologies. Springer, Boston, pp 403–449

    Chapter  Google Scholar 

  88. Xu Y, Li K, Hu J, Li K (2014) A genetic algorithm for task scheduling on heterogeneous computing systems using multiple priority queues. Inf Sci 270:255–287

    Article  MathSciNet  Google Scholar 

  89. Suter F. A synthetic task graph generator. https://github.com/frs69wq/workflowgen. Accessed 21 May 2022

  90. Zhang L, Li K, Xu Y, Mei J, Zhang F, Li K (2015) Maximizing reliability with energy conservation for parallel task scheduling in a heterogeneous cluster. Inf Sci 319:113–131

    Article  MathSciNet  Google Scholar 

Download references

Funding

The authors did not receive funding support from any organization for the submitted work.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Bhoopesh Singh Bhati.

Ethics declarations

Conflict of interest

The authors declare that they have no conflicts of interest to report regarding the present study.

Additional information

Publisher's Note

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

Rights and permissions

Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Ahmad, W., Gautam, G., Alam, B. et al. An Analytical Review and Performance Measures of State-of-Art Scheduling Algorithms in Heterogenous Computing Enviornment. Arch Computat Methods Eng (2024). https://doi.org/10.1007/s11831-024-10069-8

Download citation

  • Received:

  • Accepted:

  • Published:

  • DOI: https://doi.org/10.1007/s11831-024-10069-8

Navigation