Skip to main content

Flexible program and architecture specification for massively parallel systems

  • Conference paper
  • First Online:
Book cover Parallel Processing: CONPAR 94 — VAPP VI (VAPP 1994, CONPAR 1994)

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

Abstract

Based on a stepwise software development methodology in this paper a possibility is presented to formally describe the algorithmic details and hardware-characteristics influencing efficient problem solutions for massively parallel systems. Variability at the specification level is introduced by the possibility to express properties and modification rules of the mathematical objects and expressions the algorithm is based on. The underlying details of the (massively parallel) architecture are described in terms of an abstract data type (ADT) along with transformation rules connecting architecture independent descriptions (based on recurrence equations) and target system characteristics. By this means it is also possible to specify special language and library support along with their performance characteristics, thus forming a basis for a performance model of the architecture. A simple example is presented illustrating our approach taking the MasPar SIMD system [Bla90] as the target architecture.

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.

References

  1. Michael Barnett. The formal derivation of distributed programs from systolic arrays. In Proceedings Supercomputing, pages 363–366, 1990.

    Google Scholar 

  2. T. Blank. The MasPar MP-1 Architecture. In Proceedings IEEE Compcon, 1990.

    Google Scholar 

  3. M. Chenand, Y Choo, and J. Li. Crystal: Theory and Pragmatics of Generating efficient parallel Code, chapter 7, pages 255–308. Addison Wesley, 1991.

    Google Scholar 

  4. M.I. Cole. Algorithmic Skeletons: Structured Management of Parallel Computation. Pitman, 1989.

    Google Scholar 

  5. J. Darlington, A.J. Field, P.G. Harrison, P.H.J. Kelly, Q. Wu, and R.L. While. Parallel programming using skeleton functions. In PARLE93, Parallel Architectures and Languages Europe, June 1993.

    Google Scholar 

  6. Max Geerling. Two examples of parallel program derivation: Parallel prefix and matrix multiplication. Technical report, University of Nijmegen, The Netherlands, 1992.

    Google Scholar 

  7. P. Hudak, Jones S. Peyton, and P. Wadler. Report on the programmming language Haskell: A non strict purely functional language (version 1.2). ACM SIGPLAN notices, 27(5), 1992.

    Google Scholar 

  8. Jingke Li and Marina Chen. The data alignment phase in compiling programs for distributed-memory machines. Journal of Parallel and Distributed Computing, 13:213–221, 1991.

    Google Scholar 

  9. Björn Lisper. Synthesis of time-optimal systolic arrays with cells with inner structure. Journal of Parallel and Distributed Computing, 10:182–187, 1990.

    Google Scholar 

  10. C. Mauras, P. Gachet, P. Quinton, and Y. Saouter. Alpha du centaur: An environment for the design of regular algorithms. In International Conference on Supercomputing, Crete, 1989.

    Google Scholar 

  11. H. Partsch. Specification and Transformation of Programs — a Formal Approach. Springer, 1990.

    Google Scholar 

  12. Boleslaw K. Szymanski. EPL: Parallel Programming with Recurrent Equations, chapter 3, pages 51–104. Addison Wesley, 1991.

    Google Scholar 

  13. Ping-Sheng Tseng. A systolic array parallelizing compiler. Journal of Parallel and Distributed Computing, 9:116–127, 1990.

    Google Scholar 

  14. E. Violard and G.-R. Perrin. PEI: A language and its refinement calculus for parallel programming. Parallel Computing, 18:1167–1184, 1992.

    Google Scholar 

  15. Stephen Wolfram. Mathematica, A System for Doing Mathematics by Computer. Addison Wesley Publishing Company, 1991.

    Google Scholar 

  16. A. Yang. Design and implementation of meta-Crystal: a metalanguage for parallel program optimization. Technical report, Department of Computer Science, Yale University, 1989.

    Google Scholar 

  17. Norihiko Yoshida. A transformational approach to the derivation of hardware algorithms form recurrence equations. In Proceedings Supercomputing, pages 433–440, 1988.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Bruno Buchberger Jens Volkert

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Kindermann, S. (1994). Flexible program and architecture specification for massively parallel systems. In: Buchberger, B., Volkert, J. (eds) Parallel Processing: CONPAR 94 — VAPP VI. VAPP CONPAR 1994 1994. Lecture Notes in Computer Science, vol 854. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-58430-7_15

Download citation

  • DOI: https://doi.org/10.1007/3-540-58430-7_15

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-48789-0

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics