Skip to main content

Extending Scalar Optimizations for Arrays

  • Conference paper
  • First Online:

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

Abstract

Traditional techniques for array analysis do not provide dataflow information, and thus traditional dataflow-based scalar optimizations have not been applied to array elements. A number of techniques have recently been developed for producing information about array dataflow, raising the possibility that dataflow-based optimizations could be applied to array elements. In this paper, we show that the value-based dependence relations produced by the Omega Test can be used as a basis for generalizations of several scalar optimizations.

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   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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Paul Feautrier. Dataflow analysis of scalar and array references. International Journal of Parallel Programming, 20(1):23–53, February 1991.

    Article  MATH  Google Scholar 

  2. Dror E. Maydan, Saman P. Amarasinghe, and Monica S. Lam. Data dependence and data-flow analysis of arrays. In 5th Workshop on Languages and Compilers for Parallel Computing (Yale University tech. report YALEU/DCS/RR-915), pages 283–292, August 1992.

    Google Scholar 

  3. Peng Tu and David Padua. Array privatization for shared and distributed memory machines. In Workshop on Languages, Compilers, and Run-Time Environments for Distributed Memory Multiprocessors, September 1992.

    Google Scholar 

  4. William Pugh and David Wonnacott. An exact method for analysis of value based array data dependences. In Proceedings of the 6th Annual Workshop on Programming Languages and Compilers for Parallel Computing, volume 768 of Lecture Notes in Computer Science. Springer-Verlag, Berlin, August 1993. Also CS-TR-3196, Dept. of Computer Science, University of Maryland, College Park.

    Google Scholar 

  5. Junjie Gu, Zhiyuan Li, and Gyungho Lee. Symbolic array dataflow analysis for array privatization and program parallelization. In Supercomputing’ 95, San Diego, Ca, December 1995.

    Google Scholar 

  6. Denis Barthou, Jean-François Collard, and Paul Feautrier. Fuzzy array dataflow analysis. Journal of Parallel and Distributed Computing, 40:210–226, 1997.

    Article  MATH  Google Scholar 

  7. William Pugh and David Wonnacott. Constraint-based array dependence analysis. ACM Trans. on Programming Languages and Systems, 20(3):635–678, May 1998. http://www.acm.org/pubs/citations/journals/toplas/1998-20-3/ p635-pugh/.

    Article  Google Scholar 

  8. Vivek Sarkar and Kathleen Knobe. Enabling sparse constant propagation of array element via array SSA form. In Static Analysis Symposium (SAS’98), 1998.

    Google Scholar 

  9. M. Berry et al. The PERFECT Club benchmarks: Effective performance evaluation of supercomputers. International Journal of Supercomputing Applications, 3(3):5–40, March 1989.

    Article  Google Scholar 

  10. Wayne Kelly, Vadim Maslov, William Pugh, Evan Rosser, Tatiana Shpeisman, and David Wonnacott. The Omega Library interface guide. Technical Report CS-TR-3445, Dept. of Computer Science, University of Maryland, College Park, March 1995. The Omega library is available from http://www.cs.umd.edu/projects/omega.

  11. Wayne Kelly, William Pugh, Evan Rosser, and Tatiana Shpeisman. Transitive closure of infinite graphs and its applications. International J. of Parallel Programming, 24(6):579–598, December 1996.

    Google Scholar 

  12. Wayne Kelly, William Pugh, and Evan Rosser. Code generation for multiple mappings. In The 5th Symposium on the Frontiers of Massively Parallel Computation, pages 332–341, McLean, Virginia, February 1995.

    Google Scholar 

  13. Steven S. Muchnick. Advanced Compiler Design and Implementation. Morgan Kaufmann Publishers, Inc., 1997.

    Google Scholar 

  14. R. Eigenmann, J. Hoeflinger, Z. Li, and D. Padua. Experience in the automatic parallelization of 4 Perfect benchmark programs. In Proceedings of the 4th Workshop on Programming Languages and Compilers for Parallel Computing, August 1991. Also Technical Report 1193, CSRD, Univ. of Illinois.

    Google Scholar 

  15. David Wonnacott. Achieving scalable locality with time skewing. In preparation. A preprint is available as http://www.haverford.edu/cmsc/davew/ cache-opt/tskew.ps, and parts of this work are included in Rutgers University CS Tech Reports 379 and 378., 2000.

  16. David Wonnacott. Using time skewing to eliminate idle time due to memory bandwidth and network limitations. In Proceedings of the 2000 International Parallel and Distributed Processing Symposium, May 2000.

    Google Scholar 

  17. Evan Rosser. Personal communication, March 2000.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2001 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Wonnacott, D. (2001). Extending Scalar Optimizations for Arrays. In: Midkiff, S.P., et al. Languages and Compilers for Parallel Computing. LCPC 2000. Lecture Notes in Computer Science, vol 2017. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45574-4_7

Download citation

  • DOI: https://doi.org/10.1007/3-540-45574-4_7

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-45574-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics