Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
Skip to main content

Tuning Blocked Array Layouts to Exploit Memory Hierarchy in SMT Architectures

  • Conference paper
Advances in Informatics (PCI 2005)

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

Included in the following conference series:

  • 2038 Accesses

Abstract

Cache misses form a major bottleneck for memory-intensive applications, due to the significant latency of main memory accesses. Loop tiling, in conjunction with other program transformations, have been shown to be an effective approach to improving locality and cache exploitation, especially for dense matrix scientific computations. Beyond loop nest optimizations, data transformation techniques, and in particular blocked data layouts, have been used to boost the cache performance. The stability of performance improvements achieved are heavily dependent on the appropriate selection of tile sizes.

In this paper, we investigate the memory performance of blocked data layouts, and provide a theoretical analysis for the multiple levels of memory hierarchy, when they are organized in a set associative fashion. According to this analysis, the optimal tile size that maximizes L1 cache utilization, should completely fit in the L1 cache, even for loop bodies that access more than just one array. Increased self- or/and cross-interference misses can be tolerated through prefetching. Such larger tiles also reduce mispredicted branches and, as a result, the lost CPU cycles that arise. Results are validated through actual benchmarks on an SMT platform.

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

Access this chapter

Subscribe and save

Springer+ Basic
$34.99 /Month
  • Get 10 units per month
  • Download Article/Chapter or eBook
  • 1 Unit = 1 Article or 1 Chapter
  • Cancel anytime
Subscribe now

Buy Now

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.

Similar content being viewed by others

References

  1. Athanasaki, E., Koziris, N.: Fast Indexing for Blocked Array Layouts to Improve Multi-Level Cache Locality. In: 8-th Work. on Interaction between Compilers and Computer Architectures, Madrid, Spain (February 2004); In conjuction with HPCA-10

    Google Scholar 

  2. Athanasaki, E., Koziris, N.: A Tile Size Selection Analysis for Blocked Array Layouts. In: 9-th Work. on Interaction between Compilers and Computer Architectures, San Francisco, CA (February 2005); In conjuction with HPCA-11

    Google Scholar 

  3. Chame, J., Moon, S.: A Tile Selection Algorithm for Data Locality and Cache Interference. In: Int. Conf. on Supercomputing, Rhodes, Greece (June 1999)

    Google Scholar 

  4. Coleman, S., McKinley, K.S.: Tile Size Selection Using Cache Organization and Data Layout. In: Conf. on Programming Language Design and Implementation, La Jolla, CA (June 1995)

    Google Scholar 

  5. Esseghir, K.: Improving Data Locality for Caches. Master’s thesis, Department of Computer Science, Rice University, Houston, TX (September 1993)

    Google Scholar 

  6. Ghosh, S., Martonosi, M., Malik, S.: Cache Miss Equations: A Compiler Framework for Analyzing and Tuning Memory Behavior. ACM Trans. on Programming Languages and Systems 21(4) (July 1999)

    Google Scholar 

  7. Harper, J.S., Kerbyson, D.J., Nudd, G.R.: Analytical Modeling of Set-Associative Cache Behavior. IEEE Trans. Computers 48(10) (October 1999)

    Google Scholar 

  8. Hsu, C.-H., Kremer, U.: A Quantitative Analysis of Tile Size Selection Algprithms. The J. of Supercomputing 27(3) (March 2004)

    Google Scholar 

  9. Kandemir, M., Ramanujam, J., Choudhary, A.: Improving Cache Locality by a Combinaion of Loop and Data Transformations. IEEE Trans. on Computers 48(2) (February 1999)

    Google Scholar 

  10. Lam, M.S., Rothberg, E.E., Wolf, M.E.: The Cache Performance and Optimizations of Blocked Algorithms. In: Int. Conf. on Architectural Support for Programming Languages and Operating Systems, Santa Clara, CA (April 1991)

    Google Scholar 

  11. McKinley, K.S., Carr, S., Tseng, C.-W.: Improving Data Locality with Loop Transformations. ACM Trans. on Programming Languages and Systems 18(04) (July 1996)

    Google Scholar 

  12. Mitchell, N., Högstedt, K., Carter, L., Ferrante, J.: Quantifying the Multi-Level Nature of Tiling Interactions. Int. J. of Parallel Programming 26(6) (December 1998)

    Google Scholar 

  13. Panda, P.R., Nakamura, H., Dutt, N.D., Nicolau, A.: Augmenting Loop Tiling with Data Alignment for Improved Cache Performance. IEEE Trans. on Computers 48(2) (February 1999)

    Google Scholar 

  14. Park, N., Hong, B., Prasanna, V.: Analysis of Memory Hierarchy Performance of Block Data Layout. In: Int. Conf. on Parallel Processing, Vancouver, Canada (August 2002)

    Google Scholar 

  15. Patterson, D., Hennessy, J.: Computer Architecture. A Quantitative Approach, 3rd edn., San Francisco, CA (2002)

    Google Scholar 

  16. Rivera, G., Tseng, C.-W.: Eliminating Conflict Misses for High Performance Architectures. In: Int. Conf. on Supercomputing, Melbourne, Australia (July 1998)

    Google Scholar 

  17. Rivera, G., Tseng, C.-W.: A Comparison of Compiler Tiling Algorithms. In: Int. Conf. on Compiler Construction, Amsterdam, The Netherlands (March 1999)

    Google Scholar 

  18. Rivera, G., Tseng, C.-W.: Locality Optimizations for Multi-Level Caches. In: Int. Conf. on Supercomputing, Portland, OR (November 1999)

    Google Scholar 

  19. Song, Y., Li, Z.: Impact of Tile-Size Selection for Skewed Tiling. In: 5th Work. on Interaction between Compilers and Architectures, Monterrey, Mexico (Janaury 2001)

    Google Scholar 

  20. Temam, O., Fricker, C., Jalby, W.: Cache Interference Phenomena. In: Conf. on Measurement and Modeling of Computer Systems, Nashville, TN (May 1994)

    Google Scholar 

  21. Temam, O., Granston, E.D., Jalby, W.: To Copy or Not to Copy: A Compile-Time Technique for Assessing When Data Copying Should be Used to Eliminate Cache Conflicts. In: Conf. on Supercomputing, Portland, OR (November 1993)

    Google Scholar 

  22. Vera, X.: Cache and Compiler Interaction (how to analyze, optimize and time cache behaviour). PhD thesis, Malardalen University (Janaury 2003)

    Google Scholar 

  23. Wolf, M.E., Lam, M.S.: A Data Locality Optimizing Algorithm. In: Conf. on Programming Language Design and Implementation, Toronto, Canada (June 1991)

    Google Scholar 

  24. Wolf, M.E., Maydan, D.E., Chen, D.-K.: Combining Loop Transformations Considering Caches and Scheduling. In: Int. Symposium on Microarchitecture, Paris, France (December 1996)

    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

Athanasaki, E., Kourtis, K., Anastopoulos, N., Koziris, N. (2005). Tuning Blocked Array Layouts to Exploit Memory Hierarchy in SMT Architectures. In: Bozanis, P., Houstis, E.N. (eds) Advances in Informatics. PCI 2005. Lecture Notes in Computer Science, vol 3746. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11573036_57

Download citation

  • DOI: https://doi.org/10.1007/11573036_57

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-29673-7

  • Online ISBN: 978-3-540-32091-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics