Skip to main content

Formal derivation of SIMD parallelism from non-linear recursive specifications

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

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

Abstract

This paper presents a strategy for deriving SIMD-parallel (Single-Instruction-Multiple-Data) programs in a transformational style by parallelisation of non-linear recursive specifications. Parallelism is expressed by means of so-called skeletons.

Linear array and hypercube architectures and their skeletons are discussed in some detail. The strategy described is illustrated by derivations, such as the transformation of a generic specification for divide & conquer algorithms to an efficient implementation on hypercube 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.

References

  1. F.L. Bauer, R. Berghammer, M. Broy, W. Dosch, F. Geiselbrechtinger, R. Gnatz, E. Hangel, W. Hesse, B. Krieg-Brückner, A. Laut, T. Matzner, B. Möller, F. Nickl, H. Partsch, P. Pepper, K. Samelson, M. Wirsing, and H. Wössner. The Munich Project CIP. Volume I: The Wide Spectrum Language CIP-L, volume 183 of Lecture Notes in Computer Science. Springer-Verlag, Berlin/Heidelberg/New York, 1985.

    Google Scholar 

  2. E.A. Boiten, A.M. Geerling, and H.A. Partsch. Transformational derivation of (parallel) programs using skeletons. In H.A.G. Wijshoff, editor, Computing Science in the Netherlands 1993, pages 97–108, 1993.

    Google Scholar 

  3. F.L. Bauer and H. Wössner. Algorithmic Language and Program Development. Springer-Verlag, Berlin, 1982.

    Google Scholar 

  4. M. Chen and Y. Choo. Domain morphisms: A new construct for parallel programming and formalizing program optimization. Technical Report YALEU/DCS/TR-817, Dept. of Computer Science, Yale University, 1990.

    Google Scholar 

  5. M. Chen, Y. Choo, and J. Li. Compiling parallel programs by optimizing performance. The Journal of Supercomputing, 2:171–207, 1988.

    Google Scholar 

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

    Google Scholar 

  7. J. Darlington, A.J. Field, P.G. Harrison, P.H.J. Kelly, D.W.N. Sharp, Q. Wu, and R.L. While. Parallel programming using skeleton functions. In PARLE'93 Parallel Architectures and Languages Europe, volume 694 of Lecture Notes in Computer Science, pages 146–160. Springer-Verlag, 1993.

    Google Scholar 

  8. M.S. Feather. A survey and classification of some program transformation approaches and techniques. In L.G.L.T. Meertens, editor, Program Specification and Transformation. Proceedings of the IFIP TC2/WG2.1 Working Conference on Program Specification and Transformation, pages 165–196, Amsterdam, 1987. North-Holland Publishing Company.

    Google Scholar 

  9. P.J.M. Frederiks. From applicative specifications to parallel programs. Master's thesis, Dept. of Computing Science, University of Nijmegen, 1992.

    Google Scholar 

  10. A.M. Geerling. Two examples of parallel-program derivation: Parallel-prefix and matrix multiplication. Research Report DoC 92/33, Imperial College London, 1992.

    Google Scholar 

  11. A.M. Geerling. Formal derivation of SIMD parallelism from non-linear recursive specifications. Technical Report CSI-R9324, Computing Science Institute, University of Nijmegen, 1993.

    Google Scholar 

  12. P.G. Harrison. A higher-order approach to parallel algorithms. The Computer Journal, 35(6):555–566, December 1992.

    Google Scholar 

  13. H.A. Partsch. Specification and Transformation of Programs — a Formal Approach to Software Development. Springer-Verlag, Berlin, 1990.

    Google Scholar 

  14. H. Partsch. Some experiments in transforming towards parallel executability. In R. Paige, J. Reif, and R. Wachter, editors, Parallel Algorithm Derivation and Program Transformation, Kluwer Academic Publishers, 1993. Also: Technical Report 92-08, Dept. of Computing Science, University of Nijmegen, 1992.

    Google Scholar 

  15. M.J. Quinn. Designing efficient algorithms for parallel computers. McGraw-Hill, New York, 1987.

    Google Scholar 

  16. D.B. Skillicorn. Architecture-independent parallel computation. IEEE Computer, 23(12):38–50, December 1990.

    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

Geerling, A.M. (1994). Formal derivation of SIMD parallelism from non-linear recursive specifications. 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_13

Download citation

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

  • 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