Parallel algorithm for compile-time scheduling of parallel programs on multiprocessors

Yu Kwong Kwok, Ishfaq Ahmad

Research output: Contribution to journalConference articlepeer-review

1 Citation (Scopus)

Abstract

In this paper, we propose a parallel randomized algorithm, called Parallel Fast Assignment using Search Technique (PFAST), for scheduling parallel programs represented by directed acyclic graphs (DAGs) during compile-time. The PFAST algorithm has O(e) time complexity where e is the number of edges in the DAG. This linear-time algorithm works by first generating an initial solution and then refining it using a parallel random search. Using a prototype computer-aided parallelization and scheduling tool called CASCH, the algorithm is found to outperform numerous previous algorithms while taking dramatically smaller execution times. The distinctive feature of this research is that, instead of simulations, our proposed algorithm is evaluated and compared with other algorithms using the CASCH tool with real applications running on the Intel Paragon. The PFAST algorithm is also evaluated with randomly generated DAGs for which optimal schedules are known. The algorithm generated optimal solutions for a majority of the test cases and close-to-optimal solutions for the others. The proposed algorithm is the fastest scheduling algorithm known to us and is an attractive choice for scheduling under running time constraints.

Original languageEnglish
Pages (from-to)90-101
Number of pages12
JournalParallel Architectures and Compilation Techniques - Conference Proceedings, PACT
Publication statusPublished - 1997
Externally publishedYes
EventProceedings of the 1997 International Conference on Parallel Architectures and Compilation Techniques - San Francisco, CA, USA
Duration: 10 Nov 199714 Nov 1997

Fingerprint

Dive into the research topics of 'Parallel algorithm for compile-time scheduling of parallel programs on multiprocessors'. Together they form a unique fingerprint.

Cite this