A MODULAR IMPLEMENTATION OF DATA STRUCTURES IN BULK-SYNCHRONOUS PARALLEL ML
Abstract
A functional data-parallel language called BSML has been designed for programming Bulk-Synchronous Parallel algorithms. Many sequential algorithms do not have parallel counterparts and many non-computer science researchers do not want to deal with parallel programming. In sequential programming environments, common data structures are often provided through reusable libraries to simplify the development of applications. A parallel representation of such data structures is thus a solution for writing parallel programs without suffering from disadvantages of all the features of a parallel language. In this paper we describe a modular implementation in BSML of some data structures and show how those data types can address the needs of many potential users of parallel machines who have so far been deterred by the complexity of parallelizing code.
References
- Journal of Parallel and Distributed Computing 20, 1 (1994), DOI: 10.1006/jpdc.1994.1001. Crossref, ISI, Google Scholar
- Parallel and Distributed Computing Practices 2(3), 333 (1999). Google Scholar
-
R. H. Bisseling , Parallel Scientific Computation. A structured approach using BSP and MPI ( Oxford University Press , 2004 ) . Crossref, Google Scholar - F. Clement, A. Vodicka, R. Di Cosmo, and P. Weis. Parallel Programming with the OCamlp31 System, Application to Numerical Code Coupling. Technical Report RR-5131, INRIA, 2004 . Google Scholar
- Parallel Computing 30(3), 389 (2004), DOI: 10.1016/j.parco.2003.12.002. Crossref, ISI, Google Scholar
N. Deo and P. Micikevicius , Coarse-grained Parallelization of Distance-bound Smoothing for the Molecular Conformation Problem, 11th International Workshop Distributed Computing, Mobile and Wireless Computing (IWDC)2571,LNCS , eds.S. K. Das and S. Bhattacharya (Springer, 2002) pp. 55–66. Google ScholarJ.-C. Filliatre and P. Letouzey , Functors for Proofs and Programs, Proceedings of The European Syrap. on Programming2986,LNCS (2004) pp. 370–384. Google Scholar- PPL 13(3), 365 (2003). ISI, Google Scholar
- Future Generation Computer Systems 21(5), 665 (2005). Crossref, ISI, Google Scholar
- F. Gava. Functional Approaches of Parallel Computing and Meta-computers: Semantics, Implementations and Certification. PhD thesis, University of Paris XII, 2005 . Google Scholar
- TCS 301(3), 119 (2003), DOI: 10.1016/S0304-3975(02)00572-8. Crossref, ISI, Google Scholar
- Computing and Informatics 21, 59 (2002). ISI, Google Scholar
- , Constructive Methods for Parallel Programming,
Advances in Computation: Theory and Practice , eds.S. Gorlatch and C. Lengauer (Nova Science Publishers, 2002) pp. 165–178. Google Scholar - Higher-order and Symbolic Computation 15(3), (2003). Google Scholar
- , High Performance Computing in Science and Engineering ,
LNCS , eds.E. Krause and W. Jager ( 1999 ) . Google Scholar - Journal of Parallel and Distributed Computing 49(1), 146 (1998), DOI: 10.1006/jpdc.1998.1432. Crossref, ISI, Google Scholar
- Communication of the ACM 38(1), 96 (1995), DOI: 10.1145/204865.204889. Crossref, ISI, Google Scholar
- Scientific Programming 6(3), 249 (1997). Crossref, Google Scholar
-
N. Thomas , Framework for Adaptive Algorithm Selection in STAPL , ACM SIGPLAN Symp. Prin. Prac. Par. Prog. (PPOPP) ( 2005 ) . Google Scholar - PPL 11(4), 409 (2001). ISI, Google Scholar
-
K. A. Yelick , Parallel Data Structures for Symbolic Computation , Workshop on Parallel Symbolic Languages and Systems ( 1995 ) . Google Scholar


