An extention of edge zeroing heuristic for scheduling precedence constrained task graphs on parallel systems using cluster dependent priority scheme

Sarkar's edge zeroing heuristic [22] for scheduling precedence constrained task graphs on parallel systems can be viewed as a priority based algorithm in which the priority is assigned to edges. In this algorithm, the priority is taken as the edge weight. This can also be viewed as a module dependent priority function that is defined for pairs of modules. We have extended this idea in which the priority is a cluster dependent function of pairs of clusters (of modules). Using this idea we propose an algorithm of complexity O(|V||E|(|V|+|E|)) and compare it with some well known algorithms.

[1]  Salil P. Vadhan,et al.  Computational Complexity , 2005, Encyclopedia of Cryptography and Security.

[2]  Tao Yang,et al.  A Comparison of Clustering Heuristics for Scheduling Directed Acycle Graphs on Multiprocessors , 1992, J. Parallel Distributed Comput..

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

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

[5]  Michael Wolfe,et al.  High performance compilers for parallel computing , 1995 .

[6]  Ronald L. Graham,et al.  Optimal scheduling for two-processor systems , 1972, Acta Informatica.

[7]  Rudolf Eigenmann,et al.  Automatic program parallelization , 1993, Proc. IEEE.

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

[9]  Clifford Stein,et al.  Introduction to Algorithms, 2nd edition. , 2001 .

[10]  Claudia Leopold,et al.  Parallel and distributed computing , 2000 .

[11]  Brian A. Malloy,et al.  Scheduling DAG's for Asynchronous Multiprocessor Execution , 1994, IEEE Trans. Parallel Distributed Syst..

[12]  Pramod Kumar Mishra,et al.  A CLUSTERING HEURISTIC FOR MULTIPROCESSOR ENVIRONMENTS USING COMPUTATION AND COMMUNICATION LOADS OF MODULES , 2010 .

[13]  Tao Yang,et al.  PYRROS: static task scheduling and code generation for message passing multiprocessors , 1992 .

[14]  C. Hanen,et al.  An approximation algorithm for scheduling dependent tasks on m processors with small communication delays , 1995, Proceedings 1995 INRIA/IEEE Symposium on Emerging Technologies and Factory Automation. ETFA'95.

[15]  Ronald L. Graham,et al.  Bounds on Multiprocessing Timing Anomalies , 1969, SIAM Journal of Applied Mathematics.

[16]  Marios D. Dikaiakos,et al.  A comparison of techniques used for mapping parallel algorithms to message-passing multiprocessors , 1994, Proceedings of 1994 6th IEEE Symposium on Parallel and Distributed Processing.

[17]  Zhen Liu,et al.  A Note on Graham's Bound , 1990, Inf. Process. Lett..

[18]  James C. Browne,et al.  General approach to mapping of parallel computations upon multiprocessor architectures , 1988 .

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

[20]  Daniel Gajski,et al.  Hypertool: A Programming Aid for Message-Passing Systems , 1990, IEEE Trans. Parallel Distributed Syst..

[21]  Elisa Bertino,et al.  PARALLEL AND DISTRIBUTED SYSTEMS , 2010 .

[22]  B. J. Lageweg,et al.  Multiprocessor scheduling with communication delays , 1990, Parallel Comput..

[23]  Virginia Mary Lo,et al.  Heuristic Algorithms for Task Assignment in Distributed Systems , 1988, IEEE Trans. Computers.

[24]  Jing-Jang Hwang,et al.  Multiprocessor scheduling with interprocessor communication delays , 1988 .

[25]  Ishfaq Ahmad,et al.  FASTEST: A Practical Low-Complexity Algorithm for Compile-Time Assignment of Parallel Programs to Multiprocessors , 1999, IEEE Trans. Parallel Distributed Syst..

[26]  Tao Yang,et al.  A fast static scheduling algorithm for DAGs on an unbounded number of processors , 1991, Proceedings of the 1991 ACM/IEEE Conference on Supercomputing (Supercomputing '91).

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

[28]  T. C. Hu Parallel Sequencing and Assembly Line Problems , 1961 .

[29]  D J Evans,et al.  Parallel processing , 1986 .

[30]  Ellis Horowitz,et al.  Fundamentals of Computer Algorithms , 1978 .

[31]  Tao Yang,et al.  List Scheduling With and Without Communication Delays , 1993, Parallel Comput..

[32]  V. Sarkar,et al.  Automatic partitioning of a program dependence graph into parallel tasks , 1991, IBM J. Res. Dev..

[33]  Jun Gu,et al.  Efficient Local Search for DAG Scheduling , 2001, IEEE Trans. Parallel Distributed Syst..

[34]  Hironori Kasahara,et al.  Practical Multiprocessor Scheduling Algorithms for Efficient Parallel Processing , 1984, IEEE Transactions on Computers.

[35]  Edward A. Lee,et al.  A Compile-Time Scheduling Heuristic for Interconnection-Constrained Heterogeneous Processor Architectures , 1993, IEEE Trans. Parallel Distributed Syst..

[36]  Jeffrey J. P. Tsai,et al.  Clustering Algorithm for Parallelizing Software Systems in Multiprocessors Environment , 2000, IEEE Trans. Software Eng..

[37]  Mihalis Yannakakis,et al.  Towards an architecture-independent analysis of parallel algorithms , 1990, STOC '88.

[38]  Vivek Sarkar,et al.  Partitioning and Scheduling Parallel Programs for Multiprocessing , 1989 .