History-Based Snooping for Last Level Cache Partitions

Resolve Bottlenecks,
Find Innovative Solutions
Generate 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

VSEngineering 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

Engineering Contradiction:
Improvedata retrieval completenessVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

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.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If all partitions are snooped on every cache miss, then data retrieval completeness is improved, but bandwidth consumption increases

Engineering Contradiction:
Improvedata retrieval completenessVSAvoidbandwidth consumption
Core Design Contradiction:
ReliabilityVSQuantity of substance

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.

Inventive Principle:
Principle #10Preliminary action

3Measurement precision

If directory search is performed on every cache miss, then data location accuracy is improved, but latency increases significantly

Engineering Contradiction:
Improvedata location accuracyVSAvoidlatency
Core Design Contradiction:
Measurement precisionVSLoss of time

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.

Inventive Principle:
Principle #10Preliminary action

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.

Inventive Principle:
Principle #16Partial or excessive action

4Use of energy by moving object

If selective snooping is performed, then power and bandwidth efficiency are improved, but data retrieval reliability may decrease

Engineering Contradiction:
Improvepower efficiencyVSAvoiddata retrieval reliability
Core Design Contradiction:
Use of energy by moving objectVSReliability

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.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS9734071B2Method and apparatus for history-based snooping of last level caches
Publication Date: 2017.08.15 ORACLE INT CORP
  • US9734071B2 patent drawing
  • US9734071B2 patent drawing
  • US9734071B2 patent drawing

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.