Parallel Functional Programming with Skeletons: the OCamlP3L experiment

Abstract : Writing parallel programs is not easy, and debugging them is usually a nightmare. To cope with these diiculties, a structured approach to parallel programs using skeletons and template based compiler techniques has been developed over the past years by several researchers, including the P3L group in Pisa. This approach is based on the use of a set of primitive forms that are just functionals implemented via templates exploiting the underlying parallelism, so it is natural to ask whether marrying a real functional language like Ocaml with the P3L skeletons can be the basis of a powerful parallel programming environment. We show that this is the case: our prototype, written entirely in Ocaml using a limited form of closure passing, allows a very simple and clean programming style, shows real speed-up over a network of workstations and, as an added fundamental bonus, allows logical debug-ging of parallel programs in a sequential framework without changing the user code.
Document type :
Conference papers
Complete list of metadatas

Cited literature [25 references]  Display  Hide  Download

https://hal.inria.fr/hal-01499962
Contributor : Xavier Leroy <>
Submitted on : Saturday, April 1, 2017 - 7:15:56 PM
Last modification on : Tuesday, February 26, 2019 - 10:55:14 AM
Long-term archiving on : Sunday, July 2, 2017 - 12:59:18 PM

File

ocamlp3l-mlws.pdf
Files produced by the author(s)

Identifiers

  • HAL Id : hal-01499962, version 1

Collections

Citation

Marco Danelutto, Roberto Di Cosmo, Xavier Leroy, Susanna Pelagatti. Parallel Functional Programming with Skeletons: the OCamlP3L experiment. ACM Workshop on ML and its applications, ACM, Sep 1998, Baltimore, United States. ⟨hal-01499962⟩

Share

Metrics

Record views

554

Files downloads

73