Skip to main navigation Skip to search Skip to main content

Competitive implementation of parallel programs

  • X. Deng
  • , E. Koutsoupias
  • , P. Mackenzie

Research output: Journal Publications and Reviews › RGC 21 - Publication in refereed journal › peer-review

Abstract

We apply the methodology of competitive analysis of algorithms to the implementation of programs on parallel machines. We consider the problem of finding the best on-line distributed scheduling strategy that executes in parallel an unknown directed acyclic graph (dag) which represents the data dependency relation graph of a parallel program and which is revealed as execution proceeds. We study the competitive ratio of some important classes of dags assuming a fixed communication delay ratio τ that captures the average interprocessor communication measured in instruction cycles. We provide competitive algorithms for divide-and-conquer dags, trees, and general dags, when the number of processors depends on the size of the input dag and when the number of processors is fixed. Our major result is a lower bound Ω (τ/log τ) of the competitive ratio for trees; it shows that it is impossible to design compilers that produce almost optimal execution code for all parallel programs. This fundamental result holds for almost any reasonable distributed memory parallel computation model, including the LogP and BSP model.
Original languageEnglish
Pages (from-to)14-30
JournalAlgorithmica (New York)
Volume23
Issue number1
DOIs
Publication statusPublished - Jan 1999
Externally publishedYes

Bibliographical note

Publication details (e.g. title, author(s), publication statuses and dates) are captured on an “AS IS” and “AS AVAILABLE” basis at the time of record harvesting from the data source. Suggestions for further amendments or supplementary information can be sent to [email protected].

Research Keywords

  • Communication delay
  • Competitive analysis
  • Compiler
  • Parallel computation
  • Scheduling

Fingerprint

Dive into the research topics of 'Competitive implementation of parallel programs'. Together they form a unique fingerprint.

Cite this