Skip to main content

Static Analysis of Parameterized Loop Nests for Energy Efficient Use of Data Caches

  • Chapter
Compilers and Operating Systems for Low Power

Abstract

Caches are an important part of architectural and compiler low-power strategies by reducing memory accesses and energy per access. In this chapter, we examine efficient utilization of data caches for low power in an adaptive memory hierarchy. We focus on the optimization of data reuse through the static analysis of line size adaptivity. We present an approach that enables the quantification of data misses with respect to cache line size at compile-time. This analysis is implemented in a software package STAMINA. Experimental results demonstrate effectiveness and accuracy of the analytical results compared to alternative simulation based methods.

Supported by AMRM DABT63-98-C-0045

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
Hardcover Book
USD 109.99
Price excludes VAT (USA)
  • Durable hardcover 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

  • Anderson, E., Van Vleet, T., Brown, L., Baer, J., and Karlin, A.R. (2001). On the performance potential of dynamic cache line sizes. Technical Report UW-CSE-99-02-01. Department of Computer Science University of Washington.

    Google Scholar 

  • Banerjee, U. (1993). Loop Transformations for Restructuring Compilers The Foundations. Kluwer Academic Publishers.

    Google Scholar 

  • Clauss, Ph. (1998). Advances in parameterized linear diophantine equations for precise program analysis, Technical Report ICPS RR 98-02. Image and Scientific Parallel Computing of Strasbourg, France.

    Google Scholar 

  • Clauss, Ph. (1996). Counting solutions to linear and non-linear constraints through Ehrhart polynomials: Applications to analyze and transform scientific programs. Proceeding 10th ACM Int. Conff on Supercomputing, ICS' 96.

    Google Scholar 

  • Clauss, Ph., and Loechner, V. (1996). Parametric analysis of polyhedral iteration spaces. IEEE Int. Conff on Application Specific Array Processors, ASAP' 96, Chicago, Illinois.

    Google Scholar 

  • Cmelik, B., and Keppel, D. (1994). Shade: a fast instruction-set simulator for execution profiling. Proceedings of the 1994 conference on Measurement and modeling of computer systems. Pages 128–137.

    Google Scholar 

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

    Google Scholar 

  • Ghose, K., and Kamble, M.B. (1999) Reducing power in superscalar processor caches using subbanking, multiple line buffers and bit-line segmentation. Proceedings 1999 International Symposium on Low Power Electronics and Design. Pages 70–75.

    Google Scholar 

  • Givargis, T.D., Henkel, J., and Vahid, F. (1999) Interface and cache power exploration for core-based embedded system design. Proceeding of the 1999 International Conference on Computer-aided Design. Pages 270–273.

    Google Scholar 

  • Golub, G.H., and Van Loan, C.F. (1996). Matrix computations. Johns Hopkins Series in the Mathematical Sciences.

    Google Scholar 

  • Ji, X., Nicolaescu, D., Veidembaum, A., Nicolau, A., and Gupta, R. (2000). Compiler-directed cache assist adaptivity. ICS Techincal Report #00 17, May 2000. University of California at Irvine Department of Information and Computer Science.

    Google Scholar 

  • Kamble, MB., and Ghose, K. Analytical energy dissipation models for low power caches. Proceedings of the 1997 International Symposium on Low Power Electronics and Design. Pages 143–148.

    Google Scholar 

  • McKinley, K.S., and Temam, O. (1996). A quantitative analysis of loop nest locality. Proceedings of the 7th International Conference Architectural Support for Programming Languages and Operating Systems .(ASPLOS VII 10/96 MA, USA). Pages 94–104.

    Google Scholar 

  • Muchnick, S.S. Advanced compiler design implementation. Morgan Kaufman. Wilton, S.J.E., and Jouppi, N.P. (1996) CACTI: an enhanced cache access and cycle time model. IEEE Journal of Solid-State Circuits. Vol. 31. No. 5.

    Google Scholar 

  • Su, C., and Despain, A.M. (1995). Cache design trade-offs for power and performance optimization: a case study. Proceedings 1995 International Symposium on Low Power Design. Pages 63–68.

    Google Scholar 

  • Van Vleet, P., Anderson, E., Brown, L., Baer, J. and Karlin, A.R. (1999). Pursuing the performance potential of dynamic cache line sizes. Int. Conference on Computer Design (ICDD' 99).

    Google Scholar 

  • Veidenbaum, A. V., Tang, W., Gupta, R., Nicolau, A. and Ji, X. (1999). Adaptive cache line size to application behavior. In Proceedings of International Conference on Supercomputing. Pages 145–154.

    Google Scholar 

  • Vera, X., Llosa, J., Gonzales, A. and Bermudo, N. (2000). A fast and accurate approach to analyze cache memory behavior. Parallel Processing 6 th International Euro-Par Conference Munich, Germany. Pages 194–198

    Google Scholar 

  • Wilde, D.K. (1993). A library for doing polyhedral operations. Publication interne N 785.

    Google Scholar 

  • Wolf, M.E., and Lam, M.S. A data locality optimizing algorithm. Proc. Of the ACM SIGPLAN'91 Conference on Programming Languages Design and Implementation. Toronto, Ontario, Canada. Pages 30–44.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer Science+Business Media New York

About this chapter

Cite this chapter

D’Alberto, P., Nicolau, A., Veidenbaum, A., Gupta, R. (2003). Static Analysis of Parameterized Loop Nests for Energy Efficient Use of Data Caches. In: Benini, L., Kandemir, M., Ramanujam, J. (eds) Compilers and Operating Systems for Low Power. Springer, Boston, MA. https://doi.org/10.1007/978-1-4419-9292-5_11

Download citation

  • DOI: https://doi.org/10.1007/978-1-4419-9292-5_11

  • Publisher Name: Springer, Boston, MA

  • Print ISBN: 978-1-4613-4879-5

  • Online ISBN: 978-1-4419-9292-5

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics