Skip to main content

Exploiting Implicit Parallelism in Functional Programs with SLAM

  • Conference paper
  • First Online:

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2011))

Abstract

An effective execution model is a vital component of any general-purpose implicitly parallel programming system. We introduce SLAM (Spreading Load with Active Messages), an execution model which overcomes many of the problems with previous approaches. SLAM is effcient enough to operate at low granularity without hardware support, andhas other necessary properties. Compiling for SLAM presents an unusual set of problems, and we describe how this is done from UFOLite, a simplified version of the United Functions and Objects programming language. Linear speedups are obtained for a program with irregular, fine-grain, parallelism on stock hardware.

The work described in this paper was funded by EPSRC grant GR/M10861

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

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD   54.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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. J. Sargeant: Uniting Functional and Object-Oriented Programming, International Symposium on Object Technologies for Advanced Software, volume 742 of LNCS, pages 1–26. Springer-Verlag, 1993

    Google Scholar 

  2. J. Sargeant, C.C. Kirkham, S. Anderson: Towards a Computational Model for UFO proc. PACT94, Montreal, Canada, IFIP transactions A-50, North Holland, August 1994

    Google Scholar 

  3. J-L. Gaudiot & L. Bic (editors):Advanced Topics in Data Flow Computing, published by Prentice-Hall, 1991.

    Google Scholar 

  4. Arvind & D.E. Culler: Managing Resources in a Parallel Machine, Fifth Generation Computer Architectures, J.V. Woods ed., pages 103–121, North Holland 1986.

    Google Scholar 

  5. C.A. Ruggiero & J. Sargeant, Control of Parallelism in the Manchester Dataflow Machine, in Proc. 1987 Conference on Functional Programming Languages andComputer Architecture, volume 274 of LNCS 274, pages 1–15, Springer-Verlag, 1987.

    Google Scholar 

  6. E. Mohr, A. Kranz, R.H. Halstead: Lazy Task Creation: A Technique for Increasing the Granularity of Parallel Programs ACM Conference on Lisp and Functional Programming, Nice, France, June 1990.

    Google Scholar 

  7. P.S. Wong: Parallel Evaluation of Functional Programs. PhD thesis, Department of Computer Science, University of Manchester 1993.

    Google Scholar 

  8. S. Hwang: Dynamic Control of Parallel Task Granularity PhD thesis, Department of Computer Science, University of Manchester 1996.

    Google Scholar 

  9. T. von Eicken, D.E. Culler, S.C. Goldstein & K.E. Schauser: Active Messages: a Mechanism for Integrated Communication and Computation. proc 19th International Symposium on Computer Architecture, pages 256–266, 1992.

    Google Scholar 

  10. J. Sargeant: The SLAM Report, draft technical report, department of Computer Science, University of Manchester, 1997. Linkedfrom the UFO home page, [2].

    Google Scholar 

  11. N.G. Shivaratri & P. Krueger: Two Adaptive Location Policies for Global Scheduling Algorithms 10th International Conference on DistributedComputing Systems, June 1990.

    Google Scholar 

  12. J. R. Seward, J. Sargeant, S.J. Hooton, C.C. Kirkham & I. Watson: Optimised Compilation of UFO Proceedings of RWC97, Tokyo, Japan, 1997.

    Google Scholar 

  13. J. Sargeant: Improving Compilation of Implicit Parallel Programs by Using Runtime Information, Proc. Workshop on Compilation of Symbolic Languages for Parallel Computers, San Diego, 1991, Argonne National Laboratory tech. report ANL-91/34, pages 129-148.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sargeant, J., Kirkham, C., Watson, I. (2001). Exploiting Implicit Parallelism in Functional Programs with SLAM. In: Mohnen, M., Koopman, P. (eds) Implementation of Functional Languages. IFL 2000. Lecture Notes in Computer Science, vol 2011. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45361-X_2

Download citation

  • DOI: https://doi.org/10.1007/3-540-45361-X_2

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-41919-8

  • Online ISBN: 978-3-540-45361-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics