Skip to main content

Near-Optimal Padding for Removing Conflict Misses

  • Conference paper

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

Abstract

The effectiveness of the memory hierarchy is critical for the performance of current processors. The performance of the memory hierarchy can be improved by means of program transformations such as padding, which is a code transformation targeted to reduce conflict misses. This paper presents a novel approach to perform near-optimal padding for multi-level caches. It analyzes programs, detecting conflict misses by means of the Cache Miss Equations. A genetic algorithm is used to compute the parameter values that enhance the program. Our results show that it can remove practically all conflicts among variables in the SPECfp95, targeting all the different cache levels simultaneously.

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. Ayguadé, E., et al.: A uniform internal representation for high-level and instructionlevel transformations. UPC (1995)

    Google Scholar 

  2. Bermudo, N., Vera, X., González, A., Llosa, J.: An efficient solver for cache miss equations. In: IEEE International Symposium on Performance Analysis of Systems and Software, ISPASS 2000 (2000)

    Google Scholar 

  3. Carmean, D.: Inside the Pentium 4 Processor Micro-Architecture (2000), http://www.intel.com/pentium4

  4. Clauss, P.: Counting solutions to linear and non-linear constraints through Ehrhart polynomials. In: ACM International Conference on Supercomputing (ICS 1996), Philadelphia, pp. 278–285 (1996)

    Google Scholar 

  5. Fernández, A.: A quantitative analysis of the SPECfp95. Technical Report UPCDAC- 1999-12, Universitat Polit‘ecnica de Catalunya (March 1999)

    Google Scholar 

  6. Ghosh, S., Martonosi, M., Malik, S.: Cache miss equations: a compiler framework for analyzing and tuning memory behavior. ACM Transactions on Programming Languages and Systems 21(4), 703–746 (1999)

    Article  Google Scholar 

  7. Gill, Murray, Wright: Practical optimization. Academic Press, London (1981)

    MATH  Google Scholar 

  8. Glover, Laguna: Tabu search. Kluwer, Dordrecht (1997)

    MATH  Google Scholar 

  9. Goldberg, D.: Genetic algorithms in search, optimizations and machine learning. Addison-Wesley, Reading (1989)

    Google Scholar 

  10. Hansen, Jaumard, Mathon: Constrained nonlinear 0-1 programming. ORSA Journal on Computing (1995)

    Google Scholar 

  11. Holland, J.: Adaptation in natural and artificial systems. The University of Michigan Press, Ann Arbor (1975)

    Google Scholar 

  12. Host, Pardalos, Thoai: Introduction to global optimization. Kluwer, Dordrecht (1995)

    Google Scholar 

  13. Kirkpatrick, Gelatt, Vecchi: Optimization by simulated annealing. Science 220 (1983)

    Google Scholar 

  14. McKinley, K.S., Temam, O.: A quantitative analysis of loop nest locality. In: Proc. of VII Int. Conf. on Architectural Support for Programming Languages and Operating Systems, ASPLOS 1996 (1996)

    Google Scholar 

  15. Michalewicz, Z.: Genetic algorithms+Data structures=Evolution Programs. Springer, Heidelberg (1994)

    MATH  Google Scholar 

  16. Padua, D., et al.: Polaris developer’s document (1994)

    Google Scholar 

  17. Rivera, G., Tseng, C.-W.: Data transformations for eliminating conflict misses. In: ACM SIGPLAN 1998 Conference on Programming Language Design and Implementation (PLDI 1998), pp. 38–49 (1998)

    Google Scholar 

  18. Rivera, G., Tseng, C.-W.: Eliminating conflict misses for high performance architectures. In: ACM Internacional Conference on Supercomputing, ICS 1998 (1998)

    Google Scholar 

  19. Rivera, G., Tseng, C.-W.: Locality optimizations for multi-level caches. In: Supercomputing, SC 1999 (1999)

    Google Scholar 

  20. Torn, Zilinskas: Global optimization. Springer, Heidelberg (1989)

    Google Scholar 

  21. Vera, X., Llosa, J., González, A., Ciuraneta, C.: A fast implementation of cache miss equations. In: 8th International Workshop on Compilers for Parallel Computers, CPC 2000 (2000)

    Google Scholar 

  22. Vera, X., Xue, J.: Let’s study whole program cache behaviour analitically. In: International Symposium on High-Performance Computer Architecture (HPCA 8), Cambridge (February 2002)

    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

Vera, X., Llosa, J., González, A. (2005). Near-Optimal Padding for Removing Conflict Misses. In: Pugh, B., Tseng, CW. (eds) Languages and Compilers for Parallel Computing. LCPC 2002. Lecture Notes in Computer Science, vol 2481. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11596110_22

Download citation

  • DOI: https://doi.org/10.1007/11596110_22

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-30781-5

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

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics