Skip to main content

Dependence analysis in parallel loops with i ± k subscripts

  • Conference paper
  • First Online:

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

Abstract

Dependence analysis in sequential loops is well understood, but little work has been done on dependence analysis in explicitly parallel loops. In this paper we describe a technique for performing dependence analysis in explicitly parallel loops when all subscripts are of form i ± k, where k is an integer constant. Our technique is the only one we know of that performs subscript based dependence analysis in parallel loops.

This work was done was at the Center for Supercomputing Research and Development, University of Illinois at Urbana-Champaign. It was funded by DOE Grant No. DOE DE-FG02-85ER25001, The Control Data Corporation, and the NASA Ames Research Center under Grant No. NASA NCC 2-559.

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. U. Banerjee. Dependence analysis for supercomputing. Kluwer Academic Publishers, Boston, Mass., 1988.

    Google Scholar 

  2. M. Burke and R. Cytron. Interprocedural dependence analysis and parallelization. In Proceedings of The SIGPLAN '86 Symposium on Compiler Construction, pages 162–175, June 1986. Also avalailable as Vol 21, No. 7, SIGPLAN Notices.

    Google Scholar 

  3. D. Grunwald and H. Srinivasan. Data flow equations for explicitly parallel programs. In Conf. Record 4th ACM Symp. Principles and Practices of Parallel Programming, May 1993.

    Google Scholar 

  4. D. Knuth. Fundamental Algorithms, volume 1 of The Art of Computer Programming. Addison-Wesley, Reading, Mass, 2 edition, 1973.

    Google Scholar 

  5. A. Krishnamurthy and K. Yelick. Optimizing parallel SPMD programs. In K. Pingali, U. Banerjee, D. Gelernter, A. Nicolau, and D. Padua, editors, Languages and Compilers for Parallel Computing, 7th International Workshop, pages 331–345, Ithaca, NY, USA, August 1994.

    Google Scholar 

  6. L. Lamport. How to make a multiprocessor computer that correctly executes multiprocess programs. IEEE Transactions on Computers, C-28:690–691, 1979.

    Google Scholar 

  7. S.P. Midkiff and D.A. Padua. Some issues in the compile-time optimization of parallel programs, 1991. Research report number RC17431.

    Google Scholar 

  8. S.P. Midkiff, D.A. Padua, and R.G. Cytron. Compiling programs with user parallelism. In D. Gelernter, A. Nicolau, and D. Padua, editors, Languages and compilers for parallel computing, pages 402–422. MIT Press, Cambridge, Mass., 1990. Available as CSRD Report no. 728.

    Google Scholar 

  9. William Pugh. A practical algorithm for exact array dependence analysis. Communications of the ACM, 35(8):102–114, Aug 1992.

    Article  Google Scholar 

  10. D. Shasha and M. Snir. Efficient and correct execution of parallel programs that share memory. ACM TOPLAS, 10(2):282–312, April 1988.

    Article  Google Scholar 

  11. E. Stoltz, H. Srinivasan, James Hook, and Michael Wolfe. Static Single Assignment form for explicitly parallel programs: Theory and practice. submitted Journal of Programming Languages, 1993.

    Google Scholar 

  12. M.J. Wolfe. Optimizing supercompilers for supercomputers. MIT Press, Cambridge, Mass., 1989.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Chua-Huang Huang Ponnuswamy Sadayappan Utpal Banerjee David Gelernter Alex Nicolau David Padua

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Midkiff, S.P. (1996). Dependence analysis in parallel loops with i ± k subscripts. In: Huang, CH., Sadayappan, P., Banerjee, U., Gelernter, D., Nicolau, A., Padua, D. (eds) Languages and Compilers for Parallel Computing. LCPC 1995. Lecture Notes in Computer Science, vol 1033. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0014209

Download citation

  • DOI: https://doi.org/10.1007/BFb0014209

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-60765-6

  • Online ISBN: 978-3-540-49446-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics