Skip to main content

Advertisement

Log in

A performance study of multiprocessor task scheduling algorithms

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

Abstract

Multiprocessor task scheduling is an important and computationally difficult problem. A large number of algorithms were proposed which represent various tradeoffs between the quality of the solution and the computational complexity and scalability of the algorithm. Previous comparison studies have frequently operated with simplifying assumptions, such as independent tasks, artificially generated problems or the assumption of zero communication delay. In this paper, we propose a comparison study with realistic assumptions. Our target problems are two well known problems of linear algebra: LU decomposition and Gauss–Jordan elimination. Both algorithms are naturally parallelizable but have heavy data dependencies. The communication delay will be explicitly considered in the comparisons. In our study, we consider nine scheduling algorithms which are frequently used to the best of our knowledge: min–min, chaining, A*, genetic algorithms, simulated annealing, tabu search, HLFET, ISH, and DSH with task duplication. Based on experimental results, we present a detailed analysis of the scalability, advantages and disadvantages of each algorithm.

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.

Similar content being viewed by others

References

  1. Hou E, Ansari N, Ren H (1994) A genetic algorithm for multiprocessor scheduling. IEEE Trans Parallel Distrib Syst 5(2):113–120

    Article  Google Scholar 

  2. Correa R, Ferreira A, Rebreyend P (1999) Scheduling multiprocessor tasks with genetic algorithms. IEEE Trans Parallel Distrib Syst 10:825–837

    Article  Google Scholar 

  3. Bokhari S (1999) On the mapping problem. IEEE Trans Comput 30(3):207–214

    Article  MathSciNet  Google Scholar 

  4. Ibarra O, Kim C (1977) Heuristic algorithms for scheduling independent tasks on non-identical processors. J Assoc Comput Mach 24(2):280–289

    MATH  MathSciNet  Google Scholar 

  5. Djordjevic G, Tosic M (1996) A heuristic for scheduling task graphs with communication delays onto multiprocessors. Parallel Comput 22(9):1197–1214

    Article  MATH  MathSciNet  Google Scholar 

  6. Russell S, Norvig P (2003) Artificial intelligence, a modern approach. Pearson Education, Ch 5, pp 139–172

  7. Chamberlain R, Edelman M, Franklin M, Witte E (1988) Simulated annealing on a multiprocessor. In: Proceedings of the 1988 IEEE international conferences on computer design: VLSI in computers and processors, pp 540–544

  8. Tian Y, Sannomiya N, Xu Y (2000) A tabu search with a new neighborhood search technique applied to flow shop scheduling problems. In: Proceedings of the 39th IEEE conference on decision and control, vol 5, pp 4606–4611

  9. Macey B, Zomaya A (1998) A performance evaluation of CP list scheduling heuristics for communication intensive task graphs. In: Proc joint 12th intl parallel processing symp and ninth symp parallel and distributed prog, pp 538–541

  10. Adam T, Chandy K, Dickson J (1974) A comparison of list schedules for parallel processing systems. ACM Commun 17:685–690

    Article  MATH  Google Scholar 

  11. Kruatrachue B, Lewis T (1987) Duplication scheduling heuristic DSH: A new precedence task scheduler for parallel processing systems. PhD thesis, Oregon State University, Corvallis, OR

  12. Kruatrachue B, Lewis T (1998) Grain size determination for parallel processing. IEEE Softw 5(1):23–32

    Article  Google Scholar 

  13. Hwok Y, Ahmad I (1999) Static scheduling algorithms for allocating directed task graphs to multiprocessors. ACM Comput Surv 31(4):407–471

    Google Scholar 

  14. Braun T, Siegel H, Beck N et al (1999) A comparison study of static mapping heuristics for a class of meta-tasks on heterogeneous computing system. In: Eighth heterogeneous computing workshop (HWC), pp 15–23

  15. Davidovic T, Crainic T (2006) Benchmark-problem instances for static scheduling of task graphs with communication delays on homogeneous multiprocessor systems. Comput Oper Res 33:2155–2177

    Article  MATH  MathSciNet  Google Scholar 

  16. Zomaya A, Ward C, Macey B (1999) Genetic scheduling for parallel processor systems comparative studies and performance issues. IEEE Trans Parallel Distrib Syst 10(8):795–812

    Article  Google Scholar 

  17. Wu A, Yu H, Jin S, Lin K, Schiavone G (2004) An incremental genetic algorithm approach to multiprocessor scheduling. IEEE Trans Parallel Distrib Syst 15(9):824–834

    Article  Google Scholar 

  18. Moore M (2004) An accurate parallel genetic algorithm to schedule tasks on a cluster. Parallel Comput 30:567–583

    Article  MathSciNet  Google Scholar 

  19. Yao W, You J, Li B (2004) Main sequences genetic scheduling for multiprocessor systems using task duplication. Microprocess Microsyst 28:85–94

    Article  Google Scholar 

  20. Kwok Y, Ahmad I (1997) Efficient scheduling of arbitrary task graphs to multiprocessors using a parallel genetic algorithm. J Parallel Distrib Comput 47(1):58–77

    Article  Google Scholar 

  21. Ceyda O, Ercan M (2004) A genetic algorithm for multilayer multiprocessor task scheduling. In: TENCON 2004. IEEE region 10 conference, vol 2, pp 68–170

  22. Cheng S, Huang Y (2003) Scheduling multi-processor tasks with resource and timing constraints using genetic algorithm. In: 2003 IEEE international symposium on computational intelligence in robotics and automation, vol 2, pp 624–629

  23. Auyeung A, Gondra I, Dai H (2003) Evolutionary computing and optimization: Multi-heuristic list scheduling genetic algorithm for task scheduling. In: Proceedings of the 2003 ACM symposium on applied computing, pp 721–724

  24. Ahmad I, Dhodhi M (1996) Multiprocessor scheduling in a genetic paradigm. Parallel Comput 22(3):395–406

    Article  MATH  Google Scholar 

  25. Kwoka Y, Ahmad I (2005) On multiprocessor task scheduling using efficient state space search approaches. J Parallel Distrib Comput 65:1515–1532

    Article  Google Scholar 

  26. Borriello G, Miles D (1994) Task scheduling for real-time multi-processor simulations real-time operating systems and software. In: Proceedings of RTOSS ’94, 11th IEEE workshop, pp 70–73

  27. Onbasioglu E, Ozdamar L (2003) Optimization of data distribution and processor allocation problem using simulated annealing. J Supercomput 25(3):237–253

    Article  MATH  Google Scholar 

  28. Porto S, Ribeiro C (1995) A tabu search approach to task scheduling on heterogeneous processors under precedence constraints. Int J High-Speed Comput 7(1):45–71

    Article  Google Scholar 

  29. Baptiste P (2003) A note on scheduling multiprocessor tasks with identical processing times. Comput Oper Res 30:2071–2078

    Article  MATH  MathSciNet  Google Scholar 

  30. Baruah S (2001) Scheduling periodic tasks on uniform multiprocessors. Inf Process Lett 80:97–104

    Article  MATH  MathSciNet  Google Scholar 

  31. Singh G (2001) Performance of critical path type algorithms for scheduling on parallel processors. Oper Res Lett 29:17–30

    Article  MATH  MathSciNet  Google Scholar 

  32. Hanen C, Munier A (2001) An approximation algorithm for scheduling dependent tasks on m processors with small communication delays. Discrete Appl Math 108:239–257

    Article  MATH  MathSciNet  Google Scholar 

  33. Blazewicz J, Drozdowski M, Formanowicz P, Kubiak W, Schmidt G (2000) Scheduling preemptable tasks on parallel processors with limited availability. Parallel Comput 26:1195–1211

    Article  MathSciNet  Google Scholar 

  34. Manoharan S (2001) Effect of task scheduling on the assignment of dependency graphs. Parallel Comput 27:257–268

    Article  MATH  Google Scholar 

  35. Amoura A, Bampis E, Manoussakis Y, Tuza Z (1999) A comparison of heuristics for scheduling multiprocessor tasks on three dedicated processors. Parallel Comput 25:49–61

    Article  MATH  MathSciNet  Google Scholar 

  36. Cai X, Lee C, Wong T (2000) Multiprocessor task scheduling to minimize the maximum tardiness and the total completion time. IEEE Trans Robotics Autom 16:824–830

    Article  Google Scholar 

  37. Bandyopadhyay T, Basak S, Bhattacharya S (2004) Multiprocessor scheduling algorithm for tasks with precedence relation. In: TENCON 2004. 2004 IEEE region 10 conference, vol 2, pp 164–167

  38. Lundberg L (2002) Analyzing fixed-priority global multiprocessor scheduling. In: Proceedings of eighth IEEE on real-time and embedded technology and applications symposium, pp 145–153

  39. Kwok Y (2003) On exploiting heterogeneity for cluster based parallel multithreading using task duplication. J Supercomput 25(1):63–72

    Article  MATH  Google Scholar 

  40. Ahmad I, Kwok Y (1994) A new approach to scheduling parallel program using task duplication. In: Proceedings of international conference on parallel processing, vol 2, pp 47–51

  41. Kang O, Kim S (2003) A task duplication based scheduling algorithm for shared memory multiprocessors. Parallel Comput 29(1):161–166

    Article  Google Scholar 

  42. Darbha S, Agrawal D (1997) A task duplication based scalable scheduling algorithm for distributed memory systems. J Parallel Distrib Comput 46:15–26

    Article  MATH  Google Scholar 

  43. Kruatrachue B (1987) Static task scheduling and grain packing in parallel processing systems. PhD thesis, Electrical and Computer Engineering Department, Oregon State University

  44. Tsuchiya T, Osada T, Kikuno T (1998) Genetics-based multiprocessor scheduling using task duplication. Microprocess Microsyst 22:197–207

    Article  Google Scholar 

  45. Park G, Shirazi B, Marquis J (1998) Mapping of parallel tasks to multiprocessors with duplication. In: Proceedings of the thirty-first Hawaii international conference on system sciences, vol 7, pp 96–105

  46. Amoura A, Bampis E, König J-C (1998) Scheduling algorithms for parallel Gaussian elimination with communication costs. IEEE Trans Parallel Distrib Syst 9(7):679–686

    Article  Google Scholar 

  47. Surma D, Sha EH-M (1995) Compile-time communication scheduling on parallel systems. Research report TR-95-3, Dept of Computer Science and Engineering, University of Notre Dame

  48. Surma D, Sha EH-M, Passos N (1998) Collision graph based communication reduction techniques for parallel systems. Int J Comput Appl 5(1):11–22

    Google Scholar 

  49. Surma D, Sha EH-M (1995) Application specific communication scheduling on parallel systems. In: Eighth international conference on parallel and distributed computing systems, pp 137–139

  50. Liu Z (1998) Worst-case analysis of scheduling heuristics of parallel systems. Parallel Comput 24:863–891

    Article  MATH  MathSciNet  Google Scholar 

  51. Kafil M, Ahmad I (1997) Optimal task assignment in heterogeneous computing systems. In: 6th heterogeneous computing workshop (HCW’97), p 135

  52. Eliasi R, Elperin T, Bar-Cohen A (1990) Monte Carlo thermal optimization of populated printed circuit board. IEEE Trans Components, Hybrids, Manuf Technol 13:953–960

    Article  Google Scholar 

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

    Article  Google Scholar 

  54. Gao Y (1998) An upper bound on the convergence rates of canonical genetic algorithms. Complex Int 5:1–14

    MathSciNet  Google Scholar 

  55. Rudolph G (1994) Convergence analysis of canonical genetic algorithms. IEEE Trans Neural Networks 5(1):96–101

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Damla Turgut.

Rights and permissions

Reprints and permissions

About this article

Cite this article

Jin, S., Schiavone, G. & Turgut, D. A performance study of multiprocessor task scheduling algorithms. J Supercomput 43, 77–97 (2008). https://doi.org/10.1007/s11227-007-0139-z

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11227-007-0139-z

Keywords

Navigation