BSP Functional Programming: Examples of a Cost Based Methodology

Bulk-Synchronous Parallel ML (BSML) is a functional dataparallel language for the implementation of Bulk-Synchronous Parallel (BSP) algorithms. It makes an estimation of the execution time (cost) possible. This paper presents some general examples of BSML programs and a comparison of their predicted costs with the measured execution time on a parallel machine.

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

[2]  Yves Robert,et al.  Mapping pipeline skeletons onto heterogeneous platforms , 2007, J. Parallel Distributed Comput..

[3]  Rita Loogen,et al.  Comparing Parallel Functional Languages: Programming and Performance , 2003, High. Order Symb. Comput..

[4]  Susumu Horiguchi,et al.  Empirical Parallel Performance Prediction From Semantics-Based Profiling , 2006, Scalable Comput. Pract. Exp..

[5]  Zheng Li,et al.  Skeletal Parallel Programming with OCamlP3l 2.0 , 2005, Parallel Process. Lett..

[6]  Konrad Hinsen,et al.  Parallel Scripting with Python , 2007, Computing in Science & Engineering.

[7]  Jack Dongarra,et al.  Computational Science - ICCS 2005, 5th International Conference, Atlanta, GA, USA, May 22-25, 2005, Proceedings, Part I , 2005, International Conference on Computational Science.

[8]  Zheng Li,et al.  A calculus for parallel computations over multidimensional dense arrays , 2007, Comput. Lang. Syst. Struct..

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

[10]  Sylvain Conchon,et al.  Jocaml: mobile agents for Objective-Caml , 1999, Proceedings. First and Third International Symposium on Agent Systems Applications, and Mobile Agents.

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

[12]  Peter Krusche,et al.  Experimental Evaluation of BSP Programming Libraries , 2008, Parallel Process. Lett..

[13]  Murray Cole,et al.  BSP-based Cost Analysis of Skeletal Programs , 1999, Scottish Functional Programming Workshop.

[14]  Frédéric Loulergue,et al.  Optimizing bulk synchronous parallel ML , 2005, Sixth International Conference on Software Engineering, Artificial Intelligence, Networking and Parallel/Distributed Computing and First ACIS International Workshop on Self-Assembling Wireless Network.

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

[16]  Simon L. Peyton Jones,et al.  Processing Transactions on GRIP, a Parallel Graph Reducer , 1993, PARLE.

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

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

[19]  Jack Dongarra,et al.  Computational Science - ICCS 2007, 7th International Conference, Beijing, China, May 27 - 30, 2007, Proceedings, Part III , 2007, ICCS.

[20]  Ami Marowka,et al.  Parallel Scientific Computation: A Structured Approach using BSP and MPI , 2006, Scalable Comput. Pract. Exp..

[21]  Emmanuel Chailloux,et al.  Hirondml: Fair Threads Migrations for Objective Caml , 2008, Parallel Process. Lett..

[22]  Frédéric Gava External Memory in Bulk-Synchronous Parallel ML , 2005, Scalable Comput. Pract. Exp..