Skip to main content

The Access Region Test

  • Conference paper
  • First Online:
Languages and Compilers for Parallel Computing (LCPC 1999)

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

Abstract

Traditional loop-based dependence analysis techniques have limitations when non-affine expressions are used, when interprocedural analysis is required, or when analysis of non-loops is needed. In this work, we return to first principles to devise a more general parallelism detection strategy, which includes a dependence analysis technique which removes some of these limitations. We show how to do interprocedural dependence testing between arbitrary sections of code as well as loops, using a technique which includes privatization and recognition of inductions and reductions. We also present the results of recent experiments that we conducted to test the effectiveness of our algorithm on a variety of actual programs. The results are still preliminary, but are quite encouraging.

This work is supported in part by Army contract DABT63-95-C-0097; Army contract N66001-97-C-8532; NSF contract MIP-9619351; and a Partnership Award from IBM and the NJIT SBR program. This work is not necessarily representative of the positions of the Army or the Government.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight 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

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. V. Balasundaram and K. Kennedy. A Technique for Summarizing Data Access and its Use in Parallelism Enhancing Transformations. Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation, June 1989.

    Google Scholar 

  2. U. Banerjee. Dependence Analysis. Kluwer Academic Publishers, Norwell, MA, 1997.

    MATH  Google Scholar 

  3. W. Blume. Symbolic Analysis Techniques for Effective Automatic Parallelization. PhD thesis, Univ. of Illinois at Urbana-Champaign, Dept. of Computer Science, June 1995.

    Google Scholar 

  4. W. Blume, R. Doallo, R. Eigenmann, J. Grout, J. Hoeflinger, T. Lawrence, J. Lee, D. Padua, Y. Paek, W. Pottenger, L. Rauchwerger, and P. Tu. Parallel Programming with Polaris. IEEE Computer, 29(12):78–82, December 1996.

    Google Scholar 

  5. B. Creusillet and F. Irigoin. Interprocedural Array Region Analyses. In Lecture Notes in Computer Science. Springer Verlag, New York, New York, August 1995.

    Google Scholar 

  6. R. Eigenmann, J. Hoeflinger, and D. Padua. On the Automatic Parallelization of the Perfect Benchmarks. IEEE Transactions on Parallel and Distributed Systems, pages 5–23, January 1998.

    Google Scholar 

  7. G. Goff, K. Kennedy, and C. Tseng. Practical Dependence Testing. In Proceedings of the ACM SIGPLAN 91 Conference on Programming Language Design and Implementation, pages 15–29, June 1991.

    Google Scholar 

  8. P. Havlak and K. Kennedy. An Implementation of Interprocedural Bounded Regular Section Analysis. IEEE Transactions on Parallel and Distributed Systems, 2(3):350–360, July 1991.

    Google Scholar 

  9. J. Hoeflinger. Interprocedural Parallelization Using Memory Classification Analysis. PhD thesis, Univ. of Illinois at Urbana-Champaign, Dept. of Computer Science, August, 1998.

    Google Scholar 

  10. Z. Li, P. Yew, and C. Zhu. An Efficient Data Dependence Analysis for Parallelizing Compilers. IEEE Transactions on Parallel and Distributed Systems, 1(1):26–34, January 1990.

    Google Scholar 

  11. Y. Paek. Automatic Parallelization for Distributed Memory Machines Based on Access Region Analysis PhD thesis, Univ. of Illinois at Urbana-Champaign, Dept. of Computer Science, April 1997.

    Google Scholar 

  12. Y. Paek, J. Hoeflinger, and D. Padua. Simplification of Array Access Patterns for Compiler Optimizations. Proceedings of the SIGPLAN Conference on Programming Language Design and Implementation, June 1998.

    Google Scholar 

  13. W. Pugh. A Practical Algorithm for Exact Array Dependence Analysis. Communications of the ACM, 35(8), August 1992.

    Google Scholar 

  14. W. Pugh and D. Wonnacott. Nonlinear Array Dependence Analysis. Technical Report 123, Univ of Maryland at College Park, November 1994.

    Google Scholar 

  15. P. Tang. Exact Side Effects for Interprocedural Dependence Analysis. In 1993 ACM International Conference on Supercomputing, Tokyo, Japan, pages 137–146, July 1993.

    Google Scholar 

  16. M. Wolfe. High Performance Compilers for Parallel Computing. Addison-Wesley Publishing Co., New York, 1996.

    MATH  Google Scholar 

  17. M. Wolfe and C. Tseng. The Power Test for Data Dependence. IEEE Transactions on Parallel and Distributed Systems, September 1992.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2000 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Hoeflinger, J., Paek, Y. (2000). The Access Region Test. In: Carter, L., Ferrante, J. (eds) Languages and Compilers for Parallel Computing. LCPC 1999. Lecture Notes in Computer Science, vol 1863. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-44905-1_17

Download citation

  • DOI: https://doi.org/10.1007/3-540-44905-1_17

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-44905-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics