Analysis, evaluation, and comparison of algorithms for scheduling task graphs on parallel processors
- 23 December 2002
- proceedings article
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- Vol. 16, 207-213
- https://doi.org/10.1109/ispan.1996.508983
Abstract
In this paper, we survey algorithms that allocate a parallel program represented by an edge-weighted directed acyclic graph (DAG), also called a task graph or macro-dataflow graph, to a set of homogeneous processors, with the objective of minimizing the completion time. We analyze 21 such algorithms and classify them into four groups. The first group includes algorithms that schedule the DAG to a bounded number of processors directly. These algorithms are called the bounded number of processors (BNP) scheduling algorithms. The algorithms in the second group schedule the DAG to an unbounded number of clusters and are called the unbounded number of clusters (UNC) scheduling algorithms. The algorithms in the third group schedule the DAG using task duplication and are called the task duplication based (TDB) scheduling algorithms. The algorithms in the fourth group perform allocation and mapping on arbitrary processor network topologies. These algorithms are called the arbitrary processor network (APN) scheduling algorithms. The design philosophies and principles behind these algorithms are discussed, and the performance of all of the algorithms is evaluated and compared against each other on a unified basis by using various scheduling parameters.Keywords
This publication has 18 references indexed in Scilit:
- Applications and performance analysis of a compile-time optimization approach for list scheduling algorithms on distributed memory multiprocessorsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2003
- Bubble scheduling: A quasi dynamic algorithm for static allocation of tasks to parallel architecturesPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- A Comparison of Multiprocessor Scheduling HeuristicsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,1994
- A Static Scheduling Algorithm Using Dynamic Critical Path for Assigning Parallel Algorithms onto MultiprocessorsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,1994
- A Bottom-Up Approach to Task Scheduling on Distributed Memory MultiprocessorsPublished by Institute of Electrical and Electronics Engineers (IEEE) ,1994
- Parallax: a tool for parallel program schedulingIEEE Parallel & Distributed Technology: Systems & Applications, 1993
- A comparison of clustering heuristics for scheduling directed acyclic graphs on multiprocessorsJournal of Parallel and Distributed Computing, 1992
- C.P.M. Scheduling with Small Communication Delays and Task DuplicationOperations Research, 1991
- Towards an Architecture-Independent Analysis of Parallel AlgorithmsSIAM Journal on Computing, 1990
- Scheduling Precedence Graphs in Systems with Interprocessor Communication TimesSIAM Journal on Computing, 1989