Skip to main content

Program transformation for locality using affinity regions

  • Conference paper
  • First Online:

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

Abstract

Affinity regions ensure that a shared processor schedule, mapping loop iterations to processors, is used in consecutive parallel loop nests. Using affinity regions can improve locality without affecting parallelism.

Unlike loop fusion, affinity regions are always safe. Also, unlike parallel regions, affinity regions do not require explicit code for mapping loop iterations to processors. While affinity regions improve locality, there may be cases where more than one affinity region is possible for the same pair of loop nests. Also, loop transformations such as interchange and alignment can affect the profitability of affinity regions. In this paper we discuss the interaction between loop transformations and affinity regions, and the relationship between affinity regions and global optimization for parallelism and locality. The algorithms in this paper are being implemented in the parallelization tool, PAT, targeted at generating of affinity regions for the KSR-1.

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. KSR Fortran Programming. Kendall Square Research, Waltham, Massachusetts, 1991.

    Google Scholar 

  2. KSR Parallel Programming. Kendall Square Research, Waltham, Massachusetts, 1991.

    Google Scholar 

  3. Anderson, J., and Lam, M. S. Global optimzations for parallelism and locality on scalable parallel machines. In SIGPLAN Programming Language Design and Implementation (1993), pp. 112–125.

    Google Scholar 

  4. Appelbe, W. F., and Lakshmanan, B. Optimizing parallel programs using affinity regions. In International Conference on Parallel Processing (August 1993).

    Google Scholar 

  5. Wolfe, M.Optimizing Supercompilers for Supercomputers. The MIT Press, Cambridge, Massachusetts, 1989.

    Google Scholar 

  6. Zima, H., and Chapman, B.Supercompilers for Parallel and Vector Computers. ACM Press, New York, New York, 1990.

    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

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Appelbe, B., Hardnett, C., Doddapaneni, S. (1994). Program transformation for locality using affinity regions. In: Banerjee, U., Gelernter, D., Nicolau, A., Padua, D. (eds) Languages and Compilers for Parallel Computing. LCPC 1993. Lecture Notes in Computer Science, vol 768. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-57659-2_17

Download citation

  • DOI: https://doi.org/10.1007/3-540-57659-2_17

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57659-4

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

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics