Skip to main content

Doany: Not just another parallel loop

  • Conference paper
  • First Online:

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

Abstract

Two types of parallel loops suggested in the literature are DOALL, which describes a totally parallel loop (no dependence between iterations), and DOACROSS, which supports parallelism in loops with dependences between iterations by “delaying” execution of subsequent iterations. Limiting ourselves to the classical parallel loops essentially restricts us to parallel algorithms which correspond to simply-parallelized sequential algorithms, which inhibits any compiler restructuring that might vary from the sequential semantics. We propose a new parallel loop type, which we call a DOANY loop, and show by example how it is useful for specifying and restructuring parallel algorithms.

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. Randy Allen, David Callahan, and Ken Kennedy. Automatic decomposition of scientific programs for parallel execution. In Conf. Record 14th Annual ACM Symp. on Principles of Programming Languages, pages 63–76, Munich, Germany, January 1987.

    Google Scholar 

  2. Monica Beltrametti, Kenneth Bobey, and John R. Zorbas. The control mechanism for the Myrias parallel computer system. Computer Architecture News, 16(4):21–30, September 1988.

    Google Scholar 

  3. Ron Cytron. Doacross: Beyond vectorization for multiprocessors. In Proc. 1986 International Conf. on Parallel Processing, pages 836–844, St. Charles, IL, August 1986.

    Google Scholar 

  4. P. J. Eberlein. On using the jacobi method on the hypercube. In Michael T. Heath, editor, Hypercube Multiprocessors 1987, pages 605–611. SIAM Press, Philadelphia, January 1987.

    Google Scholar 

  5. Dennis Gannon, William Jalby, and Kyle Gallivan. Strategies for cache and local memory management by global program t ransformation. J. Parallel and Distributed Computing, 5(5):587–616, October 1988.

    Google Scholar 

  6. S. F. Lundstrom and G. H. Barnes. Controllable mimd architecture. In Proc. 1980 International Conf. on Parallel Processing, pages 19–27, St. Charles, IL, August 1980.

    Google Scholar 

  7. Parallel Computing Forum. PCF Parallel Fortran extensions. Fortran Forum, 10(3), September 1991. (special issue).

    Google Scholar 

  8. William H. Press, Brian P. Flannery, Saul A. Teukolsky, and William T. Vetterling. Numerical Recipes in C. Cambridge Univ. Press, Cambridge, 1988.

    Google Scholar 

  9. Constantine D. Polychronopoulos. Parallel Programming and Compilers. Kluwer Academic Publishers, Boston, 1988.

    Google Scholar 

  10. Sequent Computer Corp. Guide to Parallel Programming. Sequent, Beaverton, OR, 1986.

    Google Scholar 

  11. Michael Wolfe. Loop skewing: The wavefront method revisited. International J. Parallel Programming, 15(4):279–294, August 1986.

    Google Scholar 

  12. Michael Wolfe. Multiprocessor synchronization for concurrent loops. IEEE Software, 5(1):23–32, January 1988.

    Google Scholar 

  13. Michael Wolfe. More iteration space tiling. In Proc. of Supercomputing '89, pages 655–664, Reno, NV, November 1989.

    Google Scholar 

  14. Michael Wolfe. The Tiny loop restructuring research tool. In Proc. 1991 International Conf. on Parallel Processing, volume II, pages 46–53, St. Charles, IL, August 1991. Penn State Press.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Utpal Banerjee David Gelernter Alex Nicolau David Padua

Rights and permissions

Reprints and permissions

Copyright information

© 1993 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Wolfe, M. (1993). Doany: Not just another parallel loop. In: Banerjee, U., Gelernter, D., Nicolau, A., Padua, D. (eds) Languages and Compilers for Parallel Computing. LCPC 1992. Lecture Notes in Computer Science, vol 757. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57502-2_62

Download citation

  • DOI: https://doi.org/10.1007/3-540-57502-2_62

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57502-3

  • Online ISBN: 978-3-540-48201-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics