Skip to main content

Overview of a parallel reduction machine project

  • Conference paper
  • First Online:
PARLE Parallel Architectures and Languages Europe (PARLE 1987)

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

Abstract

ESPRIT Project 415 has taken what are considered to be good programming language styles and is developing parallel architectures to support them. Here we describe the part of the project which is developing a distributed memory architecture for functional languages.

Designing parallel architectures for evaluating functional languages presents many challenging problems. Firstly a model for the parallel reduction of such languages must be found. An abstract interpretation has been developed which leads to a parallel reduction model. It can be implemented in a compiler so that programs can automatically be annotated with parallelism information.

The original COBWEB, a novel distributed memory architecture, is described, along with the conclusions we have drawn from our simulation work. We also briefly describe some of the architectural features of the architecture we are designing to support the parallel reduction model.

Many programming languages including functional ones require automatic storage allocation which has to be garbage collected. We present another piece of work from our project which has resulted in the discovery of a distributed reference counting garbage collection algorithm which has very low overheads.

Research partially funded by ESPRIT Project 415 : Parallel Architectures and Languages for AIP — A VLSI-Directed Approach.

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. Anderson, P., Hankin, C., Kelly, P., Osmon, P., and Shute, M., COBWEB-2: Structured Specification of A Wafer-Scale Supercomputer, In this volume.

    Google Scholar 

  2. Aubusson, R.C., and Catt, I., Wafer Scale Integration — A Fault-Tolerant Procedure, IEEE Journal of Solid State Circuits, Sc-13, 3, 1978.

    Google Scholar 

  3. Bevan, D.I., Distributed Garbage Collection Using Reference Counting, In this volume.

    Google Scholar 

  4. Bevan, D.I., Burn, G.L., Karia, R.J., and Robson, J.D., Design Principles of a Distributed Memory Architecture for Parallel Graph Reduction, Submitted to: Third International Conference on Functional Programming Languages and Computer Architecture, September 1987.

    Google Scholar 

  5. Burn, G.L., Abstract Interpretation and the Parallel Evaluation of Functional Languages, PhD Thesis, Department of Computing, Imperial College of Science and Technology, University of London, 1986.

    Google Scholar 

  6. Burn, G.L., Evaluation Transformers — A Model for the Parallel Evalution of Functional Languages (Extended Abstract), Submitted to: Third International Conference on Functional Programming Languages and Computer Architecture, September 1987.

    Google Scholar 

  7. Burn, G.L., Hankin, C.L., and Abramsky, S., Strictness Analysis for Higher-Order Functions, Science of Computer Programming, 7, November 1986, pp.249–278.

    Google Scholar 

  8. Clack, C., and Peyton Jones, S.L., The Four-Stroke Reduction Engine, Proceedings of the 1986 ACM Conference on Lisp and Functional Programming, Cambridge, Massachusetts, 4–6 August, 1986, pp. 220–232.

    Google Scholar 

  9. Dijkstra, E.W., A Mild Variant of Combinatory Logic, EWD735, 1980.

    Google Scholar 

  10. Hankin, C.L., Burn, G.L., and Peyton Jones, S.L., A Safe Approach to Parallel Combinator Reduction (Extended Abstract), Proceedings ESOP 86 (European Symposium on Programming), Saarbrucken, Federal Republic of Germany, March 1986, Robinet, B., and Wilhelm, R. (eds.), Springer-Verlag LNCS 213, pp. 99–110.

    Google Scholar 

  11. Hankin, C.L., Burn, G.L., and Peyton Jones, S.L., A Safe Approach to Parallel Combinator Reduction, To be published in, Theoretical Computer Science.

    Google Scholar 

  12. Hankin, C.L., Osmon, P.E., and Shute, M.J., COBWEB: A Combinator Reduction Architecture, in: Proceedings of IFIP International Conference on Functional Programming Languages and Computer Architecture, Nancy, France, 16–19 September, 1985, Jouannaud, J.-P. (ed.), Springer-Verlag LNCS 201, pp. 99–112.

    Google Scholar 

  13. Hudak P. and Goldberg B., Experiments in Diffused Combinator Reduction, ACM Symposium on Lisp and Functional Programming, Austin, Texas, USA, August 1984, pp 167–176.

    Google Scholar 

  14. Hudak P. and Goldberg, B., Distributed Execution of Functional Programs using Serial Combinators, IEEE Transactions on Computers, Vol C-34 10, October 1985.

    Google Scholar 

  15. Johnsson, T., Compiling Lazy Functional Languages, PhD Thesis, Department of Computer Sciences, Chalmers University of Technology, 1987.

    Google Scholar 

  16. Karia, R.J., An Investigation of Combinator Reduction on Multiprocessor Architectures, PhD Thesis, University of London, January 1987.

    Google Scholar 

  17. Kennaway, R., and Sleep, R., Director Strings as Combinators, University of East Anglia Technical Report, November 1986.

    Google Scholar 

  18. Lerman, C.-W. and Maurer, D., A Protocol for Distributed Reference Counting, Proceedings 1986 ACM Conference on Lisp and Functional Programming, Cambridge, Massachusetts, August 4–6, 1986.

    Google Scholar 

  19. Mycroft, A., Abstract Interpretation and Optimising Transformations for Applicative Programs, PhD. Thesis, University of Edinburgh, 1981.

    Google Scholar 

  20. Peyton Jones, S.L., Implementing Functional Languages Using Graph Reduction, To be published in the Prentice-Hall International Series in Computer Science, 1987.

    Google Scholar 

  21. Peyton Jones, S.L., Clack, C. and Salkild, J., GRIP — A Parallel Graph Reduction Machine, Dept of Computer Science, University College, London, November 1985.

    Google Scholar 

  22. Seitz, C.L., The Cosmic Cube, CACM 28, 1, January 1985.

    Google Scholar 

  23. Shute, M.J., and Osmon, P.E., COBWEB — A reduction architecture, International Workshop on Wafer-Scale Integration, 10–12 July, 1985, Southampton University, United Kingdom.

    Google Scholar 

  24. Turner, D.A., Another Algorithm For Bracket Abstraction, The Journal of Symbolic Logic 44 2, June 1979, pp. 267–270.

    Google Scholar 

  25. Turner, D.A., Miranda: A non-strict functional language with polymorphic types, Functional Programming Languages and Computer Architecture, September 1985, Nancy, Jouannaud, J.-P., (ed.), Springer-Verlag LNCS 201, pp. 1–16.

    Google Scholar 

  26. Wadler, P., Strictness Analysis on Non-Flat Domains (by Abstract Interpretation over Finite Domains), Draft Manuscript distributed via the FP mailboard, 10th November, 1985.

    Google Scholar 

  27. Wadsworth, C.P., Semantics and Pragmatics of the Lambda Calculus (Chapter 4), PhD Thesis, University of Oxford, 1971.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

J. W. de Bakker A. J. Nijman P. C. Treleaven

Rights and permissions

Reprints and permissions

Copyright information

© 1987 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bevan, D., Burn, G., Karia, R. (1987). Overview of a parallel reduction machine project. In: de Bakker, J.W., Nijman, A.J., Treleaven, P.C. (eds) PARLE Parallel Architectures and Languages Europe. PARLE 1987. Lecture Notes in Computer Science, vol 258. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-17943-7_141

Download citation

  • DOI: https://doi.org/10.1007/3-540-17943-7_141

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-17943-6

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics