Functional bulk synchronous parallel programming using the BSMLlib library. BSMLlib is a functional data-parallel library for programming bulk-ynchronous parallel (BSP) algorithms in Objective CAML. This article demonstrates the expressivity of BIMLlib operations on elementary algorithms. Other operations, on a type of parallel sets, illustrate how BSP exchange phases are written as small, simple programs. A longer example, inspired by parallel join algorithms for relational databases, demonstrates the advantage of using BSMLlib’s explicit processes for dynamic load balancing. Finally, suggestions are made for extending the library and building a complete BSML language with the same operations.

Keywords for this software

Anything in here will be replaced on browsers that support the canvas element