Skip to main content

Loop Nest Parallelization

  • Reference work entry
  • 223 Accesses

Synonyms

Parallelization

Definition

Loop Nest Parallelization refers to the problem of finding parallelism in a perfect nest of sequential loops. It typically deals with transformations that change the execution order of iterations of such a nest L by creating a different nest L , such that L is equivalent to L and some of its loops can run in parallel.

Discussion

Introduction

For a better understanding of the current essay, the reader should first go through the essay Unimodular Transformations in this encyclopedia.

The program model is a perfect nest L of m sequential loops. An iteration of L is an instance of the body of L. The program consists of a certain set of iterations that are to be executed in a certain sequential order. This execution order imposes a dependence structure on the set of iterations, based on how they access different memory locations. A loop in L carries a dependence if the dependence between two iterations is due to the unfolding of that loop. A loop can ru...

This is a preview of subscription content, log in via an institution.

Buying options

Chapter
USD   29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD   1,600.00
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Hardcover Book
USD   1,799.99
Price excludes VAT (USA)
  • Durable hardcover edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Learn about institutional subscriptions

Bibliography

  1. Banerjee U (1990) Unimodular transformations of double loops. In: Proceedings of the third workshop on languages and compilers for parallel computing, Irvine, 1–3 August 1990. Available as Nicolau A, Gelernter D, Gross T, Padua D (eds) (1991) Advances in languages and compilers for parallel computing. MIT, Cambridge, pp 192–219

    Google Scholar 

  2. Banerjee U (1993) Loop transformations for restructuring compilers: the foundations. Kluwer Academic, Norwell

    Book  MATH  Google Scholar 

  3. Banerjee U (1994) Loop transformations for restructuring compilers: loop parallelization. Kluwer Academic, Norwell

    Google Scholar 

  4. D’Hollander EH (July 1992) Partitioning and labeling of loops by unimodular transformations. IEEE Trans Parallel Distrib Syst 3(4):465–476

    Article  MathSciNet  Google Scholar 

  5. Dowling ML (Dec 1990) Optimal code parallelization using unimodular transformations. Parallel Comput 16(2–3):157–171

    Article  MATH  MathSciNet  Google Scholar 

  6. Irigoin F, Triolet R (Jan 1988) Supernode partitioning. In: Proceedings of 15th annual ACM SIGACT-SIGPLAN symposium on principles of programming languages, San Diego, pp 319–329

    Google Scholar 

  7. Irigoin F, Triolet R (1989) Dependence approximation and global parallel code generation for nested loops. Parallel Distrib Algorithms (Cosnard M et al. eds), Elsivier (North-Holland), New York, pp 297–308

    Google Scholar 

  8. Lamport L (Feb 1974) The parallel execution of DO loops. Commun ACM 17(2):83–93

    Article  MATH  MathSciNet  Google Scholar 

  9. Padua DA (Nov 1979) Multiprocessors: discussions of some theoretical and practical problems. PhD thesis, Report 79-990, Department of Computer Science, University of Illinois at Urbana-Champaign, Urbana

    Google Scholar 

  10. Peir J-K, Cytron R (Aug 1989) Minimum distance: a method for partitioning recurrences for multiprocessors. IEEE Trans Comput C-38(8):1203–1211

    Article  Google Scholar 

  11. Polychronopoulos CD (Aug 1988) Compiler optimizations for enhancing parallelism and their impact on architecture design. IEEE Trans Comput C-37(8):991–1004

    Article  MathSciNet  Google Scholar 

  12. Shang W, Fortes JAB (June 1991) Time optimal linear schedules for algorithms with uniform dependences. IEEE Trans Comput 40(6):723–742

    Article  MathSciNet  Google Scholar 

  13. Wolf ME, Lam MS (Oct 1991) A loop transformation theory and an algorithm to maximize parallelism. IEEE Trans Parallel Distrib Syst 2(4):452–471

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2011 Springer Science+Business Media, LLC

About this entry

Cite this entry

Banerjee, U. (2011). Loop Nest Parallelization. In: Padua, D. (eds) Encyclopedia of Parallel Computing. Springer, Boston, MA. https://doi.org/10.1007/978-0-387-09766-4_228

Download citation

Publish with us

Policies and ethics