A programming model for BSP with partitioned synchronisation

A BSP superstep is a distributed computation comprising a number of simultaneously executing processes which may generate asynchronous messages. A superstep terminates with a barrier which enforces a global synchronisation and delivers all ongoing communications. Multilevel supersteps can utilise barriers in which subsets of processes, interacting through shared memories, are locally synchronised (partitioned synchronisation). In this paper a state-based semantics, closely related to the classical sequential programming model, is derived for distributed BSP with partitioned synchronisation.

[1]  Selim G. Akl,et al.  Design and analysis of parallel algorithms , 1985 .

[2]  Rob H. Bisseling,et al.  Parallel Scientific Computation , 2004 .

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

[4]  Clyde P. Kruskal,et al.  Submachine Locality in the Bulk Synchronous Setting (Extended Abstract) , 1996, Euro-Par, Vol. II.

[5]  Lei Chen,et al.  Algebraic Laws for BSP Programming , 1996, Euro-Par, Vol. II.

[6]  Ralph-Johan Back,et al.  Invariant based programming: basic approach and teaching experiences , 2009, Formal Aspects of Computing.

[7]  Leslie G. Valiant,et al.  A bridging model for multi-core computing , 2008, J. Comput. Syst. Sci..

[8]  Frédéric Loulergue,et al.  OSL: Optimized Bulk Synchronous Parallel Skeletons on Distributed Arrays , 2009, APPT.

[9]  Edsger W. Dijkstra,et al.  A Discipline of Programming , 1976 .

[10]  Ralph-Johan Back,et al.  Refinement Calculus: A Systematic Introduction , 1998 .

[11]  C. A. R. Hoare,et al.  An axiomatic basis for computer programming , 1969, CACM.

[12]  Michael T. Goodrich,et al.  A bridging model for parallel computation, communication, and I/O , 1996, CSUR.

[13]  Takeo Kanade,et al.  Unifying Theories of Programming , 2010, Lecture Notes in Computer Science.

[14]  Yifeng Chen,et al.  Logic of Global Synchrony , 2001, CONCUR.

[15]  Yifeng Chen,et al.  Top-Down Design of Bulk-Synchronous Parallel Programs , 2003, Parallel Process. Lett..

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

[17]  Alan Stewart,et al.  BSP-style Computation: a Semantic Investigation , 2001, Comput. J..

[18]  Gerhard Goos,et al.  Computer Science Today: Recent Trends and Developments , 1995 .

[19]  Alan Stewart,et al.  Barrier synchronisation: Axiomatisation and relaxation , 2004, Formal Aspects of Computing.

[20]  Rob H. Bisseling,et al.  Parallel scientific computation - a structured approach using BSP and MPI , 2004 .

[21]  Alexander Tiskin,et al.  The Bulk-Synchronous Parallel Random Access Machine , 1996, Theor. Comput. Sci..

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

[23]  Edsger W. Dijkstra,et al.  A constructive approach to the problem of program correctness , 1968 .

[24]  Roland Carl Backhouse Program Construction: Calculating Implementations from Specifications , 2003 .