Iterating skeletons: structured parallelism by composition

Publikation: Bidrag til bog/antologi/rapportKonferencebidrag i proceedingsForskningfagfællebedømt

  • Mischa Dieterle
  • Thomas Horstmeyer
  • Jost Berthold
  • Rita Loogen
Skeleton-based programming is an area of increasing relevance with upcoming highly parallel hardware, since it substantially facilitates parallel programming and separates concerns. When parallel algorithms expressed by skeletons involve iterations – applying the same algorithm repeatedly to successively improving data, the repeated instantiation of a skeleton incurs a certain overhead that could be saved by reusing existing processes, threads and communication structures. This is especially important when running parallel applications in a distributed environment.
However, customising a particular skeleton ad-hoc for repeated execution turns out to be considerably complicated, and raises general questions about introducing state into a stateless parallel computation. In addition, one would strongly prefer an approach which leaves the original skeleton intact, and only uses it as a building block inside a bigger structure.
In this work, we present a general framework for skeleton iteration and discuss requirements and variations of iteration control and iteration body. Skeleton iteration is expressed by synchronising a parallel iteration body skeleton with a (likewise parallel) state-based iteration control, where both skeletons offer supportive type safety by dedicated types geared towards stream communication for the iteration.
The skeleton iteration framework is implemented in the parallel Haskell dialect Eden. We use example applications to assess performance and overhead.
OriginalsprogEngelsk
TitelImplementation and Application of Functional Languages : 24th International Symposium, IFL 2012, Oxford, UK, August 30 - September 1, 2012, Revised Selected Papers
RedaktørerRalf Hinze
Antal sider19
ForlagSpringer
Publikationsdato2013
Sider18-36
ISBN (Trykt)978-3-642-41581-4
ISBN (Elektronisk)978-3-642-41582-1
DOI
StatusUdgivet - 2013
Begivenhed24th International Symposium on Implementation and Application of Functional Languages - Oxford, Storbritannien
Varighed: 30 aug. 20121 sep. 2012
Konferencens nummer: 24

Konference

Konference24th International Symposium on Implementation and Application of Functional Languages
Nummer24
LandStorbritannien
ByOxford
Periode30/08/201201/09/2012

ID: 43868769