Skip to main content

Derivation of explicitly parallel code from declarative program by transformations

  • Conference paper
  • First Online:
Book cover Perspectives of System Informatics (PSI 1996)

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

Abstract

The declarative nature of assertive languages, resulting in properties such as referential transparency, allows for rapid prototyping and modifiability. These properties facilitate an application of a program transformation to the formal development of reasonably efficient explicitly parallel programs. The example chosen is that one of the discrete Fourier transform. We start with a declarative program which follows directly from a mathematical specification of a problem; we then perform a series of transformations, each aimed at “tailoring” a program to a target architecture. The final version, for which we offer an occam2 implementation, is an annotated explicitly parallel program.

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. M. Chen, Y. Choo, J. Li. Crystal: Theory and pragmatics of generating efficient parallel code. In Parallel Functional Languages and Compilers B. Szymanski, editor, pages 255–308. Addison-Wesley, 1991.

    Google Scholar 

  2. C.M. Hoffman and M.J. O'Donnell. Programming with equations. ACM Trans. on Programming Languages and Systems, 4(1), pages 83–112, 1982.

    Google Scholar 

  3. P. Hudak. Para-Functional Programming in Haskell. In Parallel Functional Languages and Compilers B. Szymanski, editor, pages 159–196. Addison-Wesley, 1991.

    Google Scholar 

  4. C. Lengauer, M. Barnett, and D. Hudson. Towards systolizing compilation. Distributed Computing(1991) 5: 7–24.

    Google Scholar 

  5. U. Banerjee, R. Eigenman, A. Nicolau, and A. Padua. Automatic program parallelization. Proceedings of the IEEE, 81(2): 211–243, 1993.

    Google Scholar 

  6. C. Mongenet. Mapping for communications minimization using distribution and alignment. In Parallel Architectures and Compilation Techniques, L. Bic et al editors, pages 185–193, IFIP, 1995.

    Google Scholar 

  7. INMOS Ltd. occam 2 reference manual, Prentice Hall International (U.K.) Ltd., 1988.

    Google Scholar 

  8. S. Rajopadhye and R. Fujimoto: Synthesizing systolic arrays from recurrence equations. Parallel Computing 14(2): 163–189, 1990.

    Google Scholar 

  9. P. Quinton. Automatic synthesis of systolic arrays from uniform recurrent equations. Proc 11th Ann Int Symp on Computer Architecture, pages 208–214. IEEE Computer Society Press, 1984.

    Google Scholar 

  10. S. Sedukhin, and E. Trichina. An automated procedure for synthesis of systolic/wavefront arrays. In CONPAR'88, C. Jesshope and al, editor, pages 335–34. Cambridge University Press, 1989.

    Google Scholar 

  11. B. Szymanski. EPL — Parallel programming with recurrent equations. In B. Szymanski, editor Parallel Functional Languages and Compilers, pages 51–104. Addison Wesley, 1995.

    Google Scholar 

  12. E. Trichina. From functional equations to occam programs: Systolizing compilation. In L. Bic and al, editor, Parallel Architectures and Compilation Techniques, pages 310–315. IFIP, 1995.

    Google Scholar 

  13. Y. Wong and J-M. Delosme. Broadcast removal in systolic algorithms. In Proc Int Conf on Systolic Arrays, pages 403–412. IEEE Computer Society Press, 1988.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Dines Bjørner Manfred Broy Igor V. Pottosin

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Trichina, E. (1996). Derivation of explicitly parallel code from declarative program by transformations. In: Bjørner, D., Broy, M., Pottosin, I.V. (eds) Perspectives of System Informatics. PSI 1996. Lecture Notes in Computer Science, vol 1181. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-62064-8_16

Download citation

  • DOI: https://doi.org/10.1007/3-540-62064-8_16

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-49637-3

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics