Minimally Synchronous Parallel ML with Parallel Composition

Parallel divide-and-conquer parallel algorithms are very common in the litterature on parallel algorithms. In order to ease their implementation in Minimally Synchronous Parallel ML (MSPML), we add a new primitive to this asynchronous parallel functional language. MSPML is based on a parallel data structure called parallel vectors and operations to manipulate them. This paper presents semantics and an implementation of MSPML with parallel composition.

[1]  Frédéric Loulergue,et al.  A FUNCTIONAL LANGUAGE FOR DEPARTMENTAL METACOMPUTING , 2004 .

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

[3]  Guy E. Blelloch,et al.  NESL: A Nested Data-Parallel Language (Version 2.6) , 1993 .

[4]  Emmanuel Chailloux,et al.  A Portable Implementation for Objective Caml Flight , 2003, Parallel Process. Lett..

[5]  Friedhelm Meyer auf der Heide,et al.  Truly Efficient Parallel Algorithms: c-Optimal Multisearch for an Extension of the BSP Model (Extended Abstract) , 1995, ESA.

[6]  Guy E. Blelloch,et al.  Implementation of a portable nested data-parallel language , 1993, PPOPP '93.

[7]  Torsten Suel,et al.  BSPlib: The BSP programming library , 1998, Parallel Comput..

[8]  Xavier Leroy The objective caml system release 3 , 2001 .

[9]  Ernst-Rüdiger Olderog,et al.  Verification of Sequential and Concurrent Programs , 1997, Graduate Texts in Computer Science.

[10]  Olaf Bonorden,et al.  The Paderborn University BSP (PUB) library , 2003, Parallel Comput..

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

[12]  Francisco Almeida,et al.  Predicting the execution time of message passing models , 1999, Concurr. Pract. Exp..

[13]  Xavier Rebeuf Un modèle de coût symbolique pour les programmes parallèles asynchrones à dépendances structurées , 2000 .

[14]  Frédéric Loulergue,et al.  Semantics and Implementation of Minimally Synchronous Parallel ML , 2004 .

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

[16]  Abdeltouab Belbekkouche MSPML : Environnements de communication et tolerance aux pannes , 2005 .

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

[18]  Bruno Raffin,et al.  A Structured Synchronization and Communication Model Fitting Irregular Data Accesses , 1998, J. Parallel Distributed Comput..

[19]  David B. Skillicorn,et al.  Questions and Answers about BSP , 1997, Sci. Program..

[20]  Frédéric Loulergue,et al.  Bulk Synchronous Parallel ML: Modular Implementation and Performance Prediction , 2005, International Conference on Computational Science.

[21]  M. Takeichi,et al.  Segmented diffusion theorem , 2002, IEEE International Conference on Systems, Man and Cybernetics.

[22]  Olaf Bonorden,et al.  Composition of Efficient Nested BSP Algorithms: Minimum Spanning Tree Computation as an Instructive Example , 2002 .

[23]  Jeremy M. R. MARTIN,et al.  BSP Modelling of Two-Tiered Parallel Architectures , 1999 .

[24]  Frédéric Loulergue,et al.  Parallel Superposition for Bulk Synchronous Parallel ML , 2003, International Conference on Computational Science.

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

[26]  Frédéric Loulergue,et al.  Développement d'applications avec Objective CAML by E. Chailloux, P. Manoury and B. Pagano, O'Reilley, 2003 , 2004, Journal of functional programming.

[27]  Norizan Mohd Yasin International Conference on Parallel and Distributed Processing Techniques and Applications (PDPTA\'02), June 2001 , 2001 .

[28]  Alexander Tiskin,et al.  A New Way to Divide and Conquer , 2001, Parallel Process. Lett..

[29]  Pierre Castéran,et al.  Interactive Theorem Proving and Program Development , 2004, Texts in Theoretical Computer Science An EATCS Series.

[30]  Frédéric Gava,et al.  Formal Proofs of Functional BSP Programs , 2003, Parallel Process. Lett..

[31]  Frédéric Loulergue,et al.  High level BSP programming: BSML and BS , 2007 .