Skip to main content

2DT-FP: An FP based programming language for efficient parallel programming of multiprocessor networks

  • Paper Sessions
  • Conference paper
  • First Online:

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

Abstract

We propose a new paradigm for programming tightly coupled multicomputer systems, 2DT. 2DT-programs are composed of local computations on linear data (columns) and global transformations on 2-dimensional combinations of the columns (2D-arrays). Local computations can be expressed in a functional or imperative base language; a typed variant of Backus' FP, 2DT-FP, is chosen in this paper.

An interleaving semantics for 2DT-FP is given, exposing the potential for parallel execution of 2DT-FP programs. The claim is proved that any sequential and thus any parallel execution will deliver the same result.

Supported by DFG, SFB 124

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

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. K. R. Apt and E. R. Olderog. Verification of Sequential and Concurrent Programs. Springer-Verlag, 1991.

    Google Scholar 

  2. J. Backus. Can programming be liberated from the von Neumann style? A functional style and its algebra of programs. Communication of the ACM, 21(8):613–641, 1978.

    Article  Google Scholar 

  3. G. Bell. Ultracomputers: a teraflop before its time. Communications of the ACM, 35(8), 1992.

    Google Scholar 

  4. Y. Ben-Asher, D. Egozi, and A. Schuster. 2-D SIMD algorithms for perfect shuffle networks. J. Parallel and Distributed Computing, 16:250–257, 1992.

    Google Scholar 

  5. Y. Ben-Asher, G. Rünger, A. Schuster, and R. Wilhelm. 2DT-FP: An FP based programming language. Technical report, Universität des Saarlandes, SFB 124, 1992.

    Google Scholar 

  6. Y. Ben-Asher, G. Rünger, A. Schuster, and R. Wilhelm. Implementing 2DT-FP on a multiprocessor. 1993. submitted to ParCo93.

    Google Scholar 

  7. G.E. Blelloch and G.W. Sabot. Compiling collection-oriented languages onto massively parallel computers. J. of Parallel and Distributed Computing, 8(2):119–134, February 1990.

    Google Scholar 

  8. Y. Ben-Asher, H. Seidl, and R. Wilhelm. The TRANSPOSE machine: A global implementation of a parallel graph reducer. In Proc. of Tencon'89, Bombay, 1989.

    Google Scholar 

  9. Inmos Ltd. Occam Programming Manual, 1984.

    Google Scholar 

  10. R.H. Perrott, D. Crookes, and P. Milligan. The programming language ACTUS. Software — Pract. & Exp., 13(4):305–322, April 1983.

    Google Scholar 

  11. R.H. Perrott. Parallel programming. Addison-Wesley, 1987. International Computer Science series.

    Google Scholar 

  12. G. D. Plotkin. A structural approach to operational semantics. Technical Report DAIMI-FN 19, Department of Computer Science, Aarhus University, 1981.

    Google Scholar 

  13. J.R. Rose. C⋆: a C++-like language for data parallel computation. Usenix C++ Papers, pages 127–134, December 1987.

    Google Scholar 

  14. United States Department of Defense. Reference Manual for the Ada Programming Language, 1983.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Arndt Bode Mike Reeve Gottfried Wolf

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ben-Asher, Y., Rünger, G., Schuster, A., Wilhelm, R. (1993). 2DT-FP: An FP based programming language for efficient parallel programming of multiprocessor networks. In: Bode, A., Reeve, M., Wolf, G. (eds) PARLE '93 Parallel Architectures and Languages Europe. PARLE 1993. Lecture Notes in Computer Science, vol 694. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-56891-3_4

Download citation

  • DOI: https://doi.org/10.1007/3-540-56891-3_4

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-56891-9

  • Online ISBN: 978-3-540-47779-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics