On exploiting task duplication in parallel program scheduling

Ishfaq Ahmad, Yu Kwong Kwok

Research output: Contribution to journalArticlepeer-review

274 Citations (Scopus)

Abstract

One of the main obstacles in obtaining high performance from message-passing multicomputer systems is the inevitable communication overhead which is incurred when tasks executing on different processors exchange data. Given a task graph, duplication-based scheduling can mitigate this overhead by allocating some of the tasks redundantly on more than one processor. In this paper, we focus on the problem of using duplication in static scheduling of task graphs on parallel and distributed systems. We discuss five previously proposed algorithms and examine their merits and demerits. We describe some of the essential principles for exploiting duplication in a more useful manner and, based on these principles, propose an algorithm which outperforms the previous algorithms. The proposed algorithm generates optimal solutions for a number of task graphs. The algorithm assumes an unbounded number of processors. For scheduling on a bounded number of processors, we propose a second algorithm which controls the degree of duplication according to the number of available processors. The proposed algorithms are analytically and experimentally evaluated and are also compared with the previous algorithms.

Original languageEnglish
Pages (from-to)872-892
Number of pages21
JournalIEEE Transactions on Parallel and Distributed Systems
Volume9
Issue number9
DOIs
Publication statusPublished - 1998
Externally publishedYes

Keywords

  • Algorithms
  • Distributed systems
  • Duplication-based scheduling
  • Multiprocessors
  • Parallel scheduling
  • Task graphs

Fingerprint

Dive into the research topics of 'On exploiting task duplication in parallel program scheduling'. Together they form a unique fingerprint.

Cite this