History-Based Snooping for Last Level Cache Partitions
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In modern computer systems with shared caches among multiple processing agents, existing technologies suffer from high latency, increased bandwidth and power consumption due to unnecessary snooping of all partitions on cache misses, which can result in inefficiencies and performance penalties.
Innovation Solution
A method where each cache partition uses history registers to record recent misses, determining whether to snoop other partitions based on the likelihood of finding requested data, thereby optimizing resource usage by reducing unnecessary snooping.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If all partitions are snooped on every cache miss, then data retrieval completeness is improved, but power consumption and bandwidth usage increase significantly
Solution Approach 1:
The patent applies preliminary action by maintaining history registers that pre-record the locations where data was previously found for each partition. When a cache miss occurs, the system consults these pre-computed history registers to determine which partitions are likely to contain the requested data, rather than snooping all partitions. This preliminary preparation of location information enables selective snooping, reducing power consumption while maintaining data retrieval completeness.
2Reliability
If all partitions are snooped on every cache miss, then data retrieval completeness is improved, but bandwidth consumption increases
Solution Approach 1:
The history registers are pre-filled with location information from previous cache operations. When a miss occurs, this pre-stored information guides selective snooping of only those partitions that are likely to contain the data, thereby reducing the quantity of memory traffic and bandwidth consumption compared to snooping all partitions.
3Measurement precision
If directory search is performed on every cache miss, then data location accuracy is improved, but latency increases significantly
Solution Approach 1:
The history registers store pre-computed location information from previous cache operations. When a cache miss occurs, the system can quickly consult these registers to identify likely partition locations without performing a full directory search, thereby reducing latency while maintaining data location accuracy through selective directory searches only when necessary.
Solution Approach 2:
Instead of performing a complete directory search for every cache miss, the system performs partial action by conducting selective snooping based on history register information. This partial approach suffices for most cases, reducing latency while maintaining adequate data location accuracy.
4Use of energy by moving object
If selective snooping is performed, then power and bandwidth efficiency are improved, but data retrieval reliability may decrease
Solution Approach 1:
The history registers provide feedback from previous cache operations about where data was successfully located. This feedback mechanism allows the selective snooping algorithm to make informed decisions about which partitions to search, maintaining data retrieval reliability while improving power efficiency. The feedback loop continuously updates the history information to reflect current data placement patterns.
Data Source
AI summary
A method and apparatus for snooping caches is disclosed. In one embodiment, a system includes a number of processing nodes and a cache shared by each of the processing nodes. The cache is partitioned such that each of the processing nodes utilizes only one assigned partition. If a query by a processing node to its assigned partition of the cache results in a miss, a cache controller may determine whether to snoop other partitions in search of the requested information. The determination may be made based on history of where requested information was obtained from responsive to previous misses in that partition.


