Domain decomposition and skeleton programming with OCamlP3l

Domain decomposition methods are numerically efficient for the simulation of large scale phenomena; in addition, these algorithms are naturally parallel and feature a good localization of data. Skeleton programming is a high level method for specifying the parallel structure of a program. We describ...

Full description

Saved in:
Bibliographic Details
Published inParallel computing Vol. 32; no. 7; pp. 539 - 550
Main Authors Clément, F., Martin, V., Vodicka, A., Di Cosmo, R., Weis, P.
Format Journal Article
LanguageEnglish
Published Elsevier B.V 01.09.2006
Elsevier
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:Domain decomposition methods are numerically efficient for the simulation of large scale phenomena; in addition, these algorithms are naturally parallel and feature a good localization of data. Skeleton programming is a high level method for specifying the parallel structure of a program. We describe a full-fledged application of domain decomposition to a three-dimensional flow simulation problem and we express its parallel coordination code with skeleton programming in the purely functional setting of OCamlP3l. We detail the OCamlP3l skeletons (including the new parfun and pardo), their typing, informal semantics, and definition as stream processors. To summarize, functional programming and skeleton programming appear to be an efficient and convenient framework to develop such parallel numerical applications.
ISSN:0167-8191
1872-7336
DOI:10.1016/j.parco.2006.04.003