Improving cache performance with balanced tag and data paths

  • Authors:
  • Jih-Kwon Peir;Windsor W. Hsu;Honesty Young;Shauchi Ong

  • Affiliations:
  • CISE Department, University of Florida, Gainesville, FL;CS Division, University of California, Berkeley, CA;CS Department, IBM Almaden Research Center, San Jose, CA;CS Department, IBM Almaden Research Center, San Jose, CA

  • Venue:
  • Proceedings of the seventh international conference on Architectural support for programming languages and operating systems
  • Year:
  • 1996

Quantified Score

Hi-index 0.00

Visualization

Abstract

There are two concurrent paths in a typical cache access --- one through the data array and the other through the tag array. The path through the data array drives the selected set out of the array. The path through the tag array determines cache hit/miss and, for set-associative caches, selects the appropriate line from within the selected set. In both direct-mapped and set-associative caches, the path through the tag array is significantly longer than that through the data array. In this paper, we propose a path balancing technique help match the delays of the tag and data paths. The basic idea behind this technique is to employ a separate subset of the tag array to decouple the one-to-one relationship between address tags and cache lines so as to achieve a design that provides higher performance. Performance evaluation using both TPC-C and SPEC92 benchmarks shows that this path balancing technique offers impressive improvements in overall system performance over conventional cache designs. For TPC-C, improvements in the range of 6% to 28% are possible.