Skip to main content

Divide-and-Conquer Parallel Programming with Minimally Synchronous Parallel ML

  • Conference paper
Parallel Processing and Applied Mathematics (PPAM 2007)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4967))

  • 1136 Accesses

Abstract

Minimally Synchronous Parallel ML (MSPML) is a functional parallel programming language. It is based on a small number of primitives on a parallel data structure. MSPML programs are written like usual sequential ML program and use this small set of functions. MSPML is deterministic and deadlock free. The execution time of the programs can be estimated.

Divide-and-conquer is a natural way of expressing parallel algorithms. MSPML is a flat language: it is not possible to split the parallel machine in order to implement divide-and-conquer parallel algorithms. This paper presents an extension of MSPML to deal with this kind of algorithms: a parallel composition primitive.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 129.00
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 169.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Leroy, X., Doligez, D., Garrigue, J., Rémy, D., Vouillon, J.: The Objective Caml System release 3.09 (2005), web pages at: www.ocaml.org

  2. Loulergue, F., Gava, F., Billiet, D.: Bulk Synchronous Parallel ML: Modular Implementation and Performance Prediction. In: Sunderam, V.S., van Albada, G.D., Sloot, P.M.A., Dongarra, J. (eds.) ICCS 2005. LNCS, vol. 3515, pp. 1046–1054. Springer, Heidelberg (2005)

    Google Scholar 

  3. Valiant, L.G.: A bridging model for parallel computation. Communications of the ACM 33(8), 103–111 (1990)

    Article  Google Scholar 

  4. Gava, F., Loulergue, F.: A Functional Language for Departmental Metacomputing. Parallel Processing Letters 15(3), 289–304 (2005)

    Article  MathSciNet  Google Scholar 

  5. Roda, J.L., Rodríguez, C., Morales, D.G., Almeida, F.: Predicting the execution time of message passing models. Concurrency: Practice and Experience 11(9), 461–477 (1999)

    Article  Google Scholar 

  6. Loulergue, F., Gava, F., Arapinis, M., Dabrowski, F.: Semantics and Implementation of Minimally Synchronous Parallel ML. International Journal of Computer and Information Science 5(3), 182–199 (2004)

    Google Scholar 

  7. Cole, M.: Algorithmic Skeletons: Structured Management of Parallel Computation. MIT Press, Cambridge (1989)

    MATH  Google Scholar 

  8. Pelagatti, S.: Structured Development of Parallel Programs. Taylor & Francis, Abington (1998)

    Google Scholar 

  9. Bamha, M.: L’implémentation d’un langage portable à parallélisme emboîté en processus statiques. Master thesis, University of Orléans, LIFO (1996)

    Google Scholar 

  10. Blelloch, G., Chatterjee, S., Hardwick, J., Sipelstein, J., Zagha, M.: Implementation of a portable nested data-parallel language. Journal of Parallel and Distributed Computing 21(1), 4–14 (1994)

    Article  Google Scholar 

  11. Hu, Z., Takahashi, T., Iwasaki, H., Takeichi, M.: Segmented Diffusion Theorem. In: IEEE International Conference on Systems, Man and Cybernetics (SMC 2002), October 6-9, 2002, IEEE Press, Los Alamitos (2002)

    Google Scholar 

  12. Melin, E., Raffin, B., Rebeuf, X., Virot, B.: A Structured Synchronization and Communication Model Fitting Irregular Data Accesses. Journal of Parallel and Distributed Computing 50, 3–27 (1998)

    Article  MATH  Google Scholar 

  13. Tiskin, A.: A New Way to Divide and Conquer. Parallel Processing Letters (4) (2001)

    Google Scholar 

  14. Martin, J.M.R., Tiskin, A.: BSP modelling a two-tiered parallel architectures. In: Cook, B.M. (ed.) WoTUG 1990, pp. 47–55 (1999)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Roman Wyrzykowski Jack Dongarra Konrad Karczewski Jerzy Wasniewski

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Benheddi, R., Loulergue, F. (2008). Divide-and-Conquer Parallel Programming with Minimally Synchronous Parallel ML. In: Wyrzykowski, R., Dongarra, J., Karczewski, K., Wasniewski, J. (eds) Parallel Processing and Applied Mathematics. PPAM 2007. Lecture Notes in Computer Science, vol 4967. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-68111-3_114

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-68111-3_114

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-68105-2

  • Online ISBN: 978-3-540-68111-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics