1 / 9

RegionTracker: Optimizing On-Chip Cache Lookups

RegionTracker: Optimizing On-Chip Cache Lookups. What is a Cache?. Memory. Either Big & Slow or Small & Fast. CPU. Fast. Big & Slow. Memory. Small & Fast. CPU. Cache. How Does a Cache Work?. Address:. Tag Array. Data Array. =. =. =. =. Select. Towards Large On-Chip Caches.

marina
Download Presentation

RegionTracker: Optimizing On-Chip Cache Lookups

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. RegionTracker:Optimizing On-Chip Cache Lookups

  2. What is a Cache? Memory Either Big & Slow or Small & Fast CPU Fast Big & Slow Memory Small & Fast CPU Cache

  3. How Does a Cache Work? Address: Tag Array Data Array = = = = Select

  4. Towards Large On-Chip Caches Memory: CPU: CPU Cache CPU 1989 1971

  5. Towards Large On-Chip Caches CPU CPU CPU CPU CPU Cache Cache 1995 2006 CPU CPU CPU CPU • Larger, Slower caches • How can we make caches Fast again?

  6. Tag Lookup Plays Critical Role • Larger Caches are Slower, and use More Power • Serial Tag-Data lookup to reduce power CPU • Search for Tag in Tag Array • Then read desired block from data array Tag Array Data Array • Lots of fine-grain information • Can We Improve This?

  7. Key Insight Memory • Only a fewregions in cache at a time. • Can we use something small and fast to track these regions? Cache

  8. RegionTracker Design 4 • Cached Block Vector (CBV) • Cached Region Hash (CRH) (not shown) • Track which Regions are currently Cached • Allocated new CBV entry on access to new region • Combine Coarse-Grain and Fine-Grain Information 28

  9. Results and Insights • Takes advantage of common program behavior • Access a few large, continuous areas of memory at a time • Simple, Small Structures • Compact Information Encoding & Fast Access • Still use tag array when RegionTracker misses • Reduces Cache Latency • Can Reduce Cache Lookup Power • Software does NOT change

More Related