Program Phase Directed Dynamic Cache Way Reconfiguration for Power Efficiency

  • Authors:
  • Subhasis Banerjee;Surendra G;S. K. Nandy

  • Affiliations:
  • Diagnostics Engineering Group, Sun Microsystems, Bangalore, INDIA. E-mail: subhasis.banerjee@sun.com;CAD Laboratory, Supercomputer Education and Research Centre, Indian Institute of Science, Bangalore,;CAD Laboratory, Supercomputer Education and Research Centre, Indian Institute of Science, Bangalore,

  • Venue:
  • ASP-DAC '07 Proceedings of the 2007 Asia and South Pacific Design Automation Conference
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Aggressive superscalar processor with deep pipeline and sophisticated speculative execution techniques is pushing the power budget to its limit. It is found that a significant portion of this power is wasted during wrong path execution and non power optimal allocation of power hungry resources. Dynamic reconfiguration of micro-architectural resources can be exploited to bring down this waste at runtime. Lack of architectural method to capture the behavior of a program at runtime makes dynamic reconfiguration a challenge. In this paper we propose a method to characterize program behavior at runtime using conflict miss pattern of a data cache, which in turn identifies different program phases in terms of cache utilization. We use this phase information to enable/disable cache ways dynamically depending on the conflict miss pattern of a program. Using a hardware tracking mechanism we ensure that the program performance (throughput in terms of IPC) does not degrade beyond a tolerable limit. Through simulation we establish that an average improvement of 32% (best case 38%) in cache power saving is achieved at the expense of less than 2% degradation in performance for SPEC-CPU and MEDIA benchmarks. The additional hardware that detects and captures the phase information is outside the critical path of the processor and does not contribute to the overall delay.