Semantics of a Functional Bulk Synchronous Parallel Language with Imperative Features

The Bulk Synchronous Parallel ML (BSML) is a functional language for Bulk Synchronous Parallel (BSP) programming, on top of the sequential functional language Objective Caml. It is based on an extension of the λ-calculus by parallel operations on a parallel data structure named parallel vector, which is given by intention. The Objective Caml language is a functional language but it also offers imperative features. This paper presents formal semantics of BSML with references, assignment and dereferencing.

[1]  Jack Dongarra,et al.  MPI: The Complete Reference , 1996 .

[2]  George Horatiu Botorog,et al.  Efficient High-Level Parallel Programming , 1998, Theor. Comput. Sci..

[3]  Frédéric Loulergue BSlambdap: Functional BSP Programs on Enumerated Vectors , 2000, ISHPC.

[4]  Leslie G. Valiant,et al.  A bridging model for parallel computation , 1990, CACM.

[5]  Herbert Kuchen,et al.  A Skeleton Library , 2002, Euro-Par.

[6]  Gaetan Hains,et al.  An SPMD environment machine for functional BSP programs , 2001 .

[7]  Frédéric Loulergue,et al.  A Polymorphic Type System for Bulk Synchronous Parallel ML , 2003, PaCT.

[8]  Pierre Jouvelot,et al.  The type and effect discipline , 1992, [1992] Proceedings of the Seventh Annual IEEE Symposium on Logic in Computer Science.

[9]  Frédéric Loulergue,et al.  Parallel composition and bulk synchronous parallel functional programming , 2000, Scottish Functional Programming Workshop.

[10]  Murray Cole,et al.  Algorithmic Skeletons: Structured Management of Parallel Computation , 1989 .

[11]  Pascal Fradet,et al.  Compilation of a specialized functional language for massively parallel computers , 2000, Journal of Functional Programming.

[12]  Frédéric Loulergue,et al.  A calculus of functional BSP programs , 2000, Sci. Comput. Program..

[13]  Gaétan Hains,et al.  The Data-Parallel Categorical Abstract Machine , 1993, PARLE.

[14]  Susanna Pelagatti Structured development of parallel programs , 1997 .

[15]  Torsten Suel,et al.  BSPlib: The BSP programming library , 1998, Parallel Comput..

[16]  Emmanuel Chailloux,et al.  Caml Flight: a Portable SPMD Extension of ML for Distributed Memory Multiprocessors , 1995 .

[17]  Frédéric Loulergue Distributed Evaluation of Functional BSP Programs , 2001, Parallel Process. Lett..

[18]  Frédéric Loulergue Implementation of a Functional Bulk Synchronous Parallel Programming Library , 2002, IASTED PDCS.

[19]  Stephen Weislogel Bringing the Skeletons out of the Closet. , 1979 .