BSP abstract state machines capture bulk synchronous parallel computations

Abstract The bulk synchronous parallel (BSP) bridging model is a model for concurrent computations with alternating computation and communication phases between programs running on different processors. In a computation phase the programs proceed independently and asynchronously until a barrier is reached. In a communication phase initiated by all programs having reached the barrier only messages between the programs are exchanged until normal processing can be continued. In this article we present a behavioural theory for BSP computations comprising an axiomatisation of the BSP model, the definition of a restricted class of concurrent abstract state machines, which we call BSP abstract state machines, and the proof that BSP abstract state machines capture BSP computations as defined by the axiomatisation. We illustrate the use of BSP abstract state machines on map-reduce.

[1]  Frédéric Gava,et al.  An Axiomatization for BSP Algorithms , 2018, ICA3PP.

[2]  Andreas Blass,et al.  Abstract state machines capture parallel algorithms: Correction and extension , 2006, TOCL.

[3]  Andreas Blass,et al.  Abstract state machines capture parallel algorithms , 2003, TOCL.

[4]  Klaus-Dieter Schewe,et al.  Evolving concurrent systems: behavioural theory and logic , 2017, ACSW.

[5]  Klaus-Dieter Schewe,et al.  A Simplified Parallel ASM Thesis , 2012, ABZ.

[6]  Sanjay Ghemawat,et al.  MapReduce: Simplified Data Processing on Large Clusters , 2004, OSDI.

[7]  Yuri Gurevich,et al.  Sequential abstract-state machines capture sequential algorithms , 2000, TOCL.

[8]  Nachum Dershowitz,et al.  On the parallel computation thesis , 2016, Log. J. IGPL.

[9]  Mauricio Marín,et al.  A parallel search engine with BSP , 2005, Third Latin American Web Congress (LA-WEB'2005).

[10]  Klaus-Dieter Schewe,et al.  A Customised ASM Thesis for Database Transformations , 2010, Acta Cybern..

[11]  Leslie Lamport,et al.  How to Make a Multiprocessor Computer That Correctly Executes Multiprocess Programs , 2016, IEEE Transactions on Computers.

[12]  Andreas Blass,et al.  Background of Computation , 2007, Bull. EATCS.

[13]  Frédéric Gava,et al.  A BSP Algorithm for On-the-fly Checking LTL Formulas on Security Protocols , 2012, 2012 11th International Symposium on Parallel and Distributed Computing.

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

[15]  Alfredo Goldman,et al.  A Simple BSP-based Model to Predict Execution Time in GPU Applications , 2015, 2015 IEEE 22nd International Conference on High Performance Computing (HiPC).

[16]  Mauricio Marín,et al.  Multi-BSP vs. BSP: A Case of Study for Dell AMD Multicores , 2018, 2018 26th Euromicro International Conference on Parallel, Distributed and Network-based Processing (PDP).

[17]  Klaus-Dieter Schewe,et al.  Concurrent abstract state machines , 2016, Acta Informatica.

[18]  Michael B. Giles,et al.  Multigrid aircraft computations using the OPlus parallel library , 1996 .

[19]  Frédéric Gava,et al.  An ASM Thesis for BSP , 2018 .

[20]  Klaus-Dieter Schewe,et al.  Communication in Abstract State Machines , 2017, J. Univers. Comput. Sci..

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

[22]  Yuri Gurevich,et al.  Evolving algebras 1993: Lipari guide , 1995, Specification and validation methods.

[23]  Klaus-Dieter Schewe,et al.  A new thesis concerning synchronised parallel computing - simplified parallel ASM thesis , 2015, Theor. Comput. Sci..