Back to Search Start Over

A BSPLIB-STYLE API FOR BULK SYNCHRONOUS PARALLEL ML.

Authors :
LOULERGUE, FRÉDÉRIC
Source :
Scalable Computing: Practice & Experience; Sep2017, Vol. 18 Issue 3, p261-274, 14p
Publication Year :
2017

Abstract

Bulk synchronous parallelism (BSP) offers an abstract and simple model of parallelism yet allows to take realistically into account the communication costs of parallel algorithms. BSP has been used in many application domains. BSPlib and its variants are programming libraries for the C language that support the BSP style. Bulk Synchronous Parallel ML (BSML) is a library for BSP programming with the functional language OCaml. It offers parallel operations on a data structure named parallel vector. BSML provides a global view of programs, i.e. BSML programs can be seen as sequential programs working on a parallel data structure (seq of par) while a BSPlib program is written in the SPMD style and understood as a parallel composition of communicating sequential programs (par of seq). The communication styles of BSML and BSPlib are also quite different. The contribution of this paper is a BSPlib-style communication API implemented on top of BSML. It has been designed without extending BSML, but only using the imperative features of the underlying functional language OCaml. Programs implemented using this API are syntactically very close to programs implemented using a BSPlib library for the C language. It therefore shows that BSML is universal for the BSP model. [ABSTRACT FROM AUTHOR]

Details

Language :
English
ISSN :
18951767
Volume :
18
Issue :
3
Database :
Complementary Index
Journal :
Scalable Computing: Practice & Experience
Publication Type :
Academic Journal
Accession number :
125083620
Full Text :
https://doi.org/10.12694/scpe.v18i3.1306