The Bulk Synchronous Parallel ML (BSML) library v 0.4


The BSML library is a functional programming library for the Objective Caml  language for direct-mode BSP (Bulk Synchronous Parallel) algorithms. It has been developped as part of our research program to investigate paradigms for functional parallel programming as special cases of standard semantics. The underlying assumption is that (efficient) parallel algorithms are special cases of (efficient) sequential algorithms and that using concurrent extensions of sequential languages to express them is both useless and harmful.

The first version of the BSML library was developped at the LIFO (Orléans University Computer Science Laboratory). Since version 0.2, the BSML library is developped at the LIFO and the LACL (Laboratory of Algorithms, Complexity and Logic, University Paris XII Val de Marne).

The changes in BSML v 0.26 w.r.t v 0.25 are internal changes to accomodate changes in the Objective Caml distribution.

BSML 0.4 supports two low-level communication libraries:

This new version has also improved primitives, pretty printing a parallel vectors in the toplevel and a new modular organization.

Online manual:


Learning BSML


Sucessfully installed and tested on the following machines (ocaml 3.10.2 or higher):

Machine Laptop Cluster Cluster
OS Ubuntu Ubuntu MacOS
Processors Intel Core 2 Duo T7500 Dual-Core AMD Opteron(tm) Processor 2216 PowerPC