A performance study of multiprocessor task scheduling algorithms

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.

[1]  Wieslaw Kubiak,et al.  Scheduling preemptable tasks on parallel processors with limited availability , 2000, Parallel Comput..

[2]  Albert Y. Zomaya,et al.  A performance evaluation of CP list scheduling heuristics for communication intensive task graphs , 1998, Proceedings of the First Merged International Parallel Processing Symposium and Symposium on Parallel and Distributed Processing.

[3]  A. BarCohen,et al.  Monte Carlo thermal optimization of populated printed circuit board , 1990, InterSociety Conference on Thermal Phenomena in Electronic Systems.

[4]  Goran Lj. Djordjevic,et al.  A Heuristic for Scheduling Task Graphs with Communication Delays Onto Multiprocessors , 1996, Parallel Comput..

[5]  Edwin Hsing-Mean Sha,et al.  Compile-time Communication Scheduling on Parallel Systems , 1995 .

[6]  Boontee Kruatrachue,et al.  Static task scheduling and grain packing in parallel processing systems , 1987 .

[7]  Zsolt Tuza,et al.  A comparison of heuristics for scheduling multiprocessor tasks on three dedicated processors , 1999, Parallel Comput..

[8]  Ishfaq Ahmad,et al.  Optimal task assignment in heterogeneous computing systems , 1997, Proceedings Sixth Heterogeneous Computing Workshop (HCW'97).

[9]  Ishfaq Ahmad,et al.  On multiprocessor task scheduling using efficient state space search approaches , 2005, J. Parallel Distributed Comput..

[10]  Kuo-Chi Lin,et al.  An incremental genetic algorithm approach to multiprocessor scheduling , 2004, IEEE Transactions on Parallel and Distributed Systems.

[11]  Esin Onbasçioglu,et al.  Optimization of Data Distribution and Processor Allocation Problem Using Simulated Annealing , 2004, The Journal of Supercomputing.

[12]  Tatsuhiro Tsuchiya,et al.  Genetics-based multiprocessor scheduling using task duplication , 1998, Microprocess. Microsystems.

[13]  Yajie Tian,et al.  A tabu search with a new neighborhood search technique applied to flow shop scheduling problems , 2000, Proceedings of the 39th IEEE Conference on Decision and Control (Cat. No.00CH37187).

[14]  Ishfaq Ahmad,et al.  Efficient Scheduling of Arbitrary TAsk Graphs to Multiprocessors Using a Parallel Genetic Algorithm , 1997, J. Parallel Distributed Comput..

[15]  Sathiamoorthy Manoharan,et al.  Effect of task duplication on the assignment of dependency graphs , 2001, Parallel Comput..

[16]  Oscar H. Ibarra,et al.  Heuristic Algorithms for Scheduling Independent Tasks on Nonidentical Processors , 1977, JACM.

[17]  G. Borriello,et al.  Task scheduling for real-time multi-processor simulations , 1994, Proceedings of 11th IEEE Workshop on Real-Time Operating Systems and Software.

[18]  Peter Norvig,et al.  Artificial Intelligence: A Modern Approach , 1995 .

[19]  Günter Rudolph,et al.  Convergence analysis of canonical genetic algorithms , 1994, IEEE Trans. Neural Networks.

[20]  Ishfaq Ahmad,et al.  On Exploiting Task Duplication in Parallel Program Scheduling , 1998, IEEE Trans. Parallel Distributed Syst..

[21]  D. R. Surma,et al.  Collision Graph based Communication Reduction Techniques for Parallel Systems , 1997 .

[22]  Evripidis Bampis,et al.  Scheduling Algorithms for Parallel Gaussian Elimination With Communication Costs , 1998, IEEE Trans. Parallel Distributed Syst..

[23]  Jinyuan You,et al.  Main sequences genetic scheduling for multiprocessor systems using task duplication , 2004, Microprocess. Microsystems.

[24]  Yueh-Min Huang,et al.  Scheduling multi-processor tasks with resource and timing constraints using genetic algorithm , 2003, Proceedings 2003 IEEE International Symposium on Computational Intelligence in Robotics and Automation. Computational Intelligence in Robotics and Automation for the New Millennium (Cat. No.03EX694).

[25]  H. K. Dai,et al.  Multi-heuristic list scheduling genetic algorithm for task scheduling , 2003, SAC '03.

[26]  Yu-Kwong Kwok,et al.  On Exploiting Heterogeneity for Cluster Based Parallel Multithreading Using Task Duplication , 2003, The Journal of Supercomputing.

[27]  Zhen Liu,et al.  Worst-Case Analysis of Scheduling Heuristics of Parallel Systems , 1998, Parallel Comput..

[28]  Ishfaq Ahmad,et al.  A New Approach to Scheduling Parallel Programs Using Task Duplication , 1994, 1994 Internatonal Conference on Parallel Processing Vol. 2.

[29]  Mark A. Franklin,et al.  Simulated annealing on a multiprocessor , 1988, Proceedings 1988 IEEE International Conference on Computer Design: VLSI.

[30]  T. Bandyopadhyay,et al.  Multiprocessor scheduling algorithm for tasks with precedence relation , 2004, 2004 IEEE Region 10 Conference TENCON 2004..

[31]  Nirwan Ansari,et al.  A Genetic Algorithm for Multiprocessor Scheduling , 1994, IEEE Trans. Parallel Distributed Syst..

[32]  Michelle D. Moore,et al.  An accurate parallel genetic algorithm to schedule tasks on a cluster , 2004, Parallel Comput..

[33]  Imtiaz Ahmad,et al.  Multiprocessor Scheduling in a Genetic Paradigm , 1996, Parallel Comput..

[34]  Behrooz Shirazi,et al.  Mapping of parallel tasks to multiprocessors with duplication , 1998, Proceedings of the Thirty-First Hawaii International Conference on System Sciences.

[35]  Gaurav Singh Performance of critical path type algorithms for scheduling on parallel processors , 2001, Oper. Res. Lett..

[36]  Lars Lundberg,et al.  Analyzing fixed-priority global multiprocessor scheduling , 2002, Proceedings. Eighth IEEE Real-Time and Embedded Technology and Applications Symposium.

[37]  K. Mani Chandy,et al.  A comparison of list schedules for parallel processing systems , 1974, Commun. ACM.

[38]  Shahid H. Bokhari,et al.  On the Mapping Problem , 1981, IEEE Transactions on Computers.

[39]  Y.-K. Kwok,et al.  Static scheduling algorithms for allocating directed task graphs to multiprocessors , 1999, CSUR.

[40]  Boontee Kruatrachue,et al.  Grain size determination for parallel processing , 1988, IEEE Software.

[41]  Sanjoy K. Baruah,et al.  Scheduling periodic tasks on uniform multiprocessors , 2000, Proceedings 12th Euromicro Conference on Real-Time Systems. Euromicro RTS 2000.

[42]  Philippe Baptiste,et al.  A note on scheduling multiprocessor tasks with identical processing times , 2003, Comput. Oper. Res..

[43]  David S. Edwin,et al.  Application Specific Communication Scheduling on Parallel Systems , 1995 .

[44]  Chung-Yee Lee,et al.  Multiprocessor task scheduling to minimize the maximum tardiness and the total completion time , 2000, IEEE Trans. Robotics Autom..

[45]  Teodor Gabriel Crainic,et al.  Benchmark-problem instances for static scheduling of task graphs with communication delays on homogeneous multiprocessor systems , 2006, Comput. Oper. Res..

[46]  Dharma P. Agrawal,et al.  A Task Duplication Based Scalable Scheduling Algorithm for Distributed Memory Systems , 1997, J. Parallel Distributed Comput..

[47]  Oh-Han Kang,et al.  A task duplication based scheduling algorithm for shared memory multiprocessors , 2003, Parallel Comput..

[48]  Ceyda Oguz,et al.  A genetic algorithm for multilayer multiprocessor task scheduling , 2004, 2004 IEEE Region 10 Conference TENCON 2004..

[49]  C. Ribeiro,et al.  A Tabu Search Approach to Task Scheduling on Heterogeneous Processors under Precedence Constraints , 1995, Int. J. High Speed Comput..

[50]  Claire Hanen,et al.  An approximation algorithm for scheduling dependent tasks on m processors with small communication delays , 2001, Discret. Appl. Math..

[51]  Marin Golub,et al.  Scheduling Multiprocessor Tasks with Genetic Algorithms , 2019 .

[52]  Ladislau Bölöni,et al.  A comparison study of static mapping heuristics for a class of meta-tasks on heterogeneous computing systems , 1999, Proceedings. Eighth Heterogeneous Computing Workshop (HCW'99).

[53]  Albert Y. Zomaya,et al.  Genetic Scheduling for Parallel Processor Systems: Comparative Studies and Performance Issues , 1999, IEEE Trans. Parallel Distributed Syst..