Skip to main content

On Dependence Analysis for SIMD Enhanced Processors

  • Conference paper
High Performance Computing for Computational Science - VECPAR 2004 (VECPAR 2004)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 3402))

Abstract

There are a number of data dependence tests that have been proposed in the literature. In each test there is a different trade-off between accuracy and efficiency. The most widely used approximate data dependence tests are the Banerjee inequality and the GCD test. In this paper we consider parallelization for microprocessors with a multimedia extension (the short SIMD execution model). For the short SIMD parallelism extraction it is essential that, if dependency exists, then the distance between memory references is greater than or equal to the number of data processed in the SIMD register. This implies that some loops that could not be vectorized on traditional vector processors can still be parallelized for the short SIMD execution. In all of these tests the parallelization would be prohibited when actually there is no parallelism restriction relating to the short SIMD execution model.

In this paper we present a new, fast and accurate data dependence test (called D-test) for array references with linear subscripts, which is used in a vectorizing compiler for microprocessors with a multimedia extension. The presented test is suitable for use in a dependence analyzer that is organized as a series of tests, progressively increasing in accuracy, as a replacement for the GCD or Banerjee tests.

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 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.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. Banerjee, U., Eigenman, R., Nicolau, A., Padua, D.A.: Automatic Program Parallelization. Proceedings of the IEEE, 81(2), 211–243 (1993)

    Google Scholar 

  2. Banerjee, U.: Dependence Analysis: A Book Series on Loop Transformations for Restructuring Compilers. Kluwer Academic Publishers, Dordrecht (1997)

    MATH  Google Scholar 

  3. Bik, A.J.C., Girkar, M., Grey, P.M., Tian, X.M.: Automatic Intra-Register Vectorization for the Intel (R) Architecture. International Journal of Parallel Programming 30(2), 65–98 (2002)

    Article  MATH  Google Scholar 

  4. Chang, W.L., Chu, C.P.: The Generalized Direction Vector I Test. Parallel Computing 27(8), 1117–1144 (2001)

    Article  MATH  MathSciNet  Google Scholar 

  5. Kong, X., Klappholz, D., Psarris, K.: The I Test: An Improved Dependence Test for Automatic Parallelization and Vectorization. IEEE Transactions on Parallel and Distributed Systems 2(3), 342–349 (1991)

    Article  Google Scholar 

  6. Krall, A., Lelait, S.: Compilation Techniques for Multimedia Processors. International Journal of Parallel Programming 28(4), 347–361 (2000)

    Article  Google Scholar 

  7. Lee, R.: Accelerating Multimedia with Enhanced Processors. IEEE Micro. 15(2), 22–32 (1995)

    Article  Google Scholar 

  8. Lee, R., Smith, M.D.: Media Processing: A New Design Target. IEEE Micro. 16(4), 6–9 (1996)

    Article  Google Scholar 

  9. Oberman, S., Favor, G., Weber, F.: AMD 3DNow! Technology: Architecture and Implementation. IEEE Micro. 19(2), 37–48 (1999)

    Article  Google Scholar 

  10. Peleg, A., Weiser, U.: MMX Technology Extension to the Intel Architecture. IEEE Micro. 16(4), 42–50 (1996)

    Article  Google Scholar 

  11. Pough, W.: A Practical Algorithm for Exact Array Dependence Analysis. Communications of the ACM 35(8), 102–114 (1992)

    Article  Google Scholar 

  12. Psarris, K., Klappholz, D., Kong, X.: On the Accuracy of the Banerjee Test, Shared Memory Multiprocessors (special issue). Journal of Parallel and Distributed Computing 12, 152–157 (1991)

    Article  MATH  MathSciNet  Google Scholar 

  13. Psarris, K., Klappholz, D., Kong, X.: The Direction Vector I Test. IEEE Transactions on Parallel and Distributed Systems 4(11), 1280–1290 (1993)

    Article  Google Scholar 

  14. Psarris, K.: The Banerjee-Wolfe and GCD Tests on Exact Data Dependence Information. Journal of Parallel and Distributed Computing 32, 119–138 (1996)

    Article  Google Scholar 

  15. Sreraman, N., Govindarajan, R.: A Vectorizing Compiler for Multimedia Extensions. International Journal of Parallel Programming 28(4), 363–400 (2000)

    Article  Google Scholar 

  16. Wolfe, M.J., Banerjee, U.: Data Dependence and its Application to Parallel Processing. International Journal of Parallel Programming 16(2), 137–178 (1987)

    Article  MATH  MathSciNet  Google Scholar 

  17. Wolfe, M.J., Tseng, C.W.: The Power Test for Data Dependence. IEEE Transactions on Parallel and Distributed Systems 3(5), 591–601 (1992)

    Article  Google Scholar 

  18. Wolfe, M.J.: High Performance Compilers for Parallel Computing. Addison-Wesley Publishing Company, Reading (1996)

    MATH  Google Scholar 

  19. Zima, H.P., Chapman, B.M.: Supercompilers for Parallel and Vector Computers. Addison-Wesley Publishing Company, Reading (1990)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bulić, P., Guštin, V. (2005). On Dependence Analysis for SIMD Enhanced Processors. In: Daydé, M., Dongarra, J., Hernández, V., Palma, J.M.L.M. (eds) High Performance Computing for Computational Science - VECPAR 2004. VECPAR 2004. Lecture Notes in Computer Science, vol 3402. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11403937_40

Download citation

  • DOI: https://doi.org/10.1007/11403937_40

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-25424-9

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics