A contention-aware heuristic scheduling algorithm for Fork-Join task graphs

Task scheduling is a challenging aspect of parallel programming. Aiming at the problem that most heuristics for this NP-hard problem always assume fully connected processors and concurrent inter-processor communication which are not met on real parallel systems, this paper proposes a communication contention-aware heuristic scheduling algorithm for Fork-Join task graphs, named CCAHS_FJ, which preserves the theoretical basis of task scheduling and improves the scheduling performance by serializing the edges to integrate the communication awareness into task scheduling. Experimental evaluation validates that the proposed algorithm produces superior results than other compared algorithms in terms of schedule length, number of used processors, speedup and efficiency.

[1]  Pierre-François Dutot,et al.  Scheduling with storage constraints , 2008, 2008 IEEE International Symposium on Parallel and Distributed Processing.

[2]  Foad Lotfifar,et al.  A Low-Complexity Task Scheduling Algorithm for Heterogeneous Computing Systems , 2009, 2009 Third Asia International Conference on Modelling & Simulation.

[3]  Zhang Hong A SUB\|OPTIMAL ALGORITHM ON ALLOCATING A SINGLE TASK CLUSTER ON NOWs , 1999 .

[4]  Leonel Sousa,et al.  Communication contention in task scheduling , 2005, IEEE Transactions on Parallel and Distributed Systems.

[5]  Panlop Zeephongsekul,et al.  A Heuristic Algorithm for Mapping Parallel Applications on Computational Grids , 2005, EGC.

[6]  Leonel Sousa,et al.  List scheduling: extension for contention awareness and evaluation of node priorities for heterogeneous cluster architectures , 2004, Parallel Comput..

[7]  ZhuGuangxi,et al.  An optimal scheduling algorithm based on task duplication , 2005 .

[8]  Dharma P. Agrawal,et al.  Optimal Scheduling Algorithm for Distributed-Memory Machines , 1998, IEEE Trans. Parallel Distributed Syst..

[9]  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.

[10]  Oliver Sinnen,et al.  Task Scheduling for Parallel Systems , 2007, Wiley series on parallel and distributed computing.

[11]  Zhao Hong A New Algorithm for Scheduling Fork-Join Task Graph , 2002 .

[12]  Leonel Sousa,et al.  On Task Scheduling Accuracy: Evaluation Methodology and Results , 2004, The Journal of Supercomputing.

[13]  Ishfaq Ahmad,et al.  Dynamic Critical-Path Scheduling: An Effective Technique for Allocating Task Graphs to Multiprocessors , 1996, IEEE Trans. Parallel Distributed Syst..