Skip to main content

A coarse grain parallel architecture for functional languages

  • Submitted Presentations
  • Conference paper
  • First Online:
PARLE '89 Parallel Architectures and Languages Europe (PARLE 1989)

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

Abstract

Design considerations of a coarse grain parallel architecture for functional languages are presented. These include extensibility, the separation of computation and control of parallelism, the introduction of partially shared memories, a cluster concept and a conceptually centralised loadbalancing mechanism. The implementation of parallel reduction is based on annotation of coarse grain strict arguments. Speed-up figures for a number of application programs are obtained by measurements on a pilot implementation of the architecture. The experience obtained with the experimental machine suggests the use of VLSI for specialised parts of the implementation. The proposed design is compared with related architectures.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

7. References

  1. H.P. Barendregt, M.C.J.D. van Eekelen, M.J. Plasmeijer, P.H. Hartel, L.O. Hertzberger, W.G. Vree, "The Dutch Parallel Reduction Machine Project", Frontiers in Computing, Amsterdam, December 1987.

    Google Scholar 

  2. F.W. Burton, M.R. Sleep, "Executing functional programs on a virtual tree of processors", Conference on functional languages and computer architecture, New Hampshire, 1981, pp 187–194.

    Google Scholar 

  3. J. Fairbairn, S. Wray, "Tim: a simple, lazy abstract machine to execute supercombinators", Proceedings of the Third International Conference on Functional Programming Languages and Computer Architecture (FPCA '87), Portland, Oregon, USA, LNCS 274, pp. 364–384, September 1987.

    Google Scholar 

  4. P.H. Hartel, W.G. Vree, "A load distribution network for a multi processor reduction machine", Internal report D-6, PRM project, April 1986

    Google Scholar 

  5. P.H. Hartel, W.G. Vree, Parallel graph reduction for divide and conquer applications-part II, Internal report D-20, PRM project, December 1987.

    Google Scholar 

  6. R.F.H. Hofman, "An on-the-fly scheduling algorithm for a parallel reduction machine", Internal report D-18, PRM project, October 1988.

    Google Scholar 

  7. P. Hudak, "Distributed execution of functional programs using serial combinators", IEEE transactions on computers, Vol C-34, number 10, October 1985.

    Google Scholar 

  8. T. Johnsson, "Efficient Compilation of Lazy Evaluation", Proc. of the ACM Sigplan '84, Sigplan Notices, Vol. 19, No 6, June 1984.

    Google Scholar 

  9. T. Johnsson, "Lambda lifting", Proc. Aspenas workshop on implementations of functional languages, Sweden February 1985

    Google Scholar 

  10. R.M. Keller, F.C.H. Lin, "Simulated performance of a reduction based multiprocessor", IEEE Computer, Vol 17, July 1984

    Google Scholar 

  11. R.M. Keller, J.W. Slater, K.V. Likes, "Overview of Rediflow II Development", Proceedings of a workshop on graph reduction, September/October 1986, Santa Fé, New Mexico, USA, LNCS 279, pp 203–214

    Google Scholar 

  12. J. Marti, J. Fitch, "The Bath concurrent Lisp machine", Eurocal, 1983, Lecture notes in computer science 162, pp 78–90

    Google Scholar 

  13. D.L. McBurney, M.R. Sleep, "Transputer-based experiments with the ZAPP architecture", PARLE '87, LNCS 258, pp 242–259

    Google Scholar 

  14. S.L. Peyton-Jones, C. Clack, J. Salkild, M. Hardie, "GRIP-a high performance architecture for parallel graph reduction", Proceedings of the Third International Conference on Functional Programming Languages and Computer Architecture (FPCA '87), Portland, Oregon, USA, LNCS 274, pp. 98–112, September 1987.

    Google Scholar 

  15. D.A. Turner, "A new implementation technique for applicative languages", Software practice and experience, Vol 9, pp 31–49, 1979

    Google Scholar 

  16. W.G. Vree, "The grain size of parallel computations in a functional program", Proc. of the int. conf. on parallel processing and applications, l'Aquila, Italy September 1987.

    Google Scholar 

  17. P.H. Hartel, W.G. Vree, Parallel graph reduction for divide and conquer applications-part I, Internal report D-15, PRM project, December 1987.

    Google Scholar 

  18. W.G. Vree, "Parallel graph reduction for communicating sequential processes", Internal report D-26, PRM project, Februari 1989.

    Google Scholar 

  19. H.H. Wang, "A parallel method for Tridiagonal Equations", ACM transactions on Mathematical Software, Vol 7, No 2, June 1981, pp 170–183

    Article  Google Scholar 

  20. P. Watson, I. Watson, "Evaluating functional program on the FLAGSHIP machine", Proceedings of the Third International Conference on Functional Programming Languages and Computer Architecture (FPCA '87), Portland, Oregon, USA, LNCS 274, pp. 80–97, September 1987.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Eddy Odijk Martin Rem Jean-Claude Syre

Rights and permissions

Reprints and permissions

Copyright information

© 1989 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hertzberger, L.O., Vree, W.G. (1989). A coarse grain parallel architecture for functional languages. In: Odijk, E., Rem, M., Syre, JC. (eds) PARLE '89 Parallel Architectures and Languages Europe. PARLE 1989. Lecture Notes in Computer Science, vol 365. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3540512845_45

Download citation

  • DOI: https://doi.org/10.1007/3540512845_45

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-51284-4

  • Online ISBN: 978-3-540-46183-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics