Snoop Filter Segmentation for Precise Scalable Cache Tracking

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing snoop filter structures face limitations in efficiently tracking a variable number of cache elements due to scaling issues with presence vectors, leading to reduced precision and address capability.

Innovation Solution

A snoop filter device is organized into initial and final instances, with storage locations structured in a set-associative manner, allowing grouping to adapt to a variable number of cache elements while maintaining consistent presence vector count, enhancing tracking efficiency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If the presence vector is scaled according to the number of cache elements, then the snoop filter can track more cache elements, but the address capability of each snoop filter entry is damaged

Engineering Contradiction:
Improvetracking capabilityVSAvoidaddress capability
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

The snoop filter is divided into multiple instances, each tracking a subset of cache elements. This segmentation allows the filter to scale to track more cache elements while each instance maintains its address capability intact, resolving the contradiction between tracking capability and address capability.

Inventive Principle:
Principle #1Segmentation

2Adaptability or versatility

If each presence vector represents multiple cache elements, then the snoop filter can track more cache elements, but the precision of tracking is significantly lost

Engineering Contradiction:
Improvetracking capabilityVSAvoidtracking precision
Core Design Contradiction:
Adaptability or versatilityVSMeasurement precision

Solution Approach 1:

Instead of having each presence vector represent multiple cache elements (which loses precision), the invention segments the snoop filter into multiple instances, where each instance maintains precise tracking of its assigned cache elements. This achieves scalability while preserving tracking precision.

Inventive Principle:
Principle #1Segmentation

3Adaptability or versatility

If the snoop filter structure is made scalable to variable cache elements, then adaptability improves, but device complexity increases

Engineering Contradiction:
ImprovescalabilityVSAvoidstructure complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The snoop filter is segmented into multiple instances that can be selectively activated based on the number of cache elements. This modular approach provides scalability while managing complexity through standardized, repeatable units rather than a monolithic complex structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The snoop filter structure dynamically adapts to the number of cache elements by activating the appropriate number of instances. This dynamic configuration provides scalability while maintaining manageable complexity through on-demand resource allocation.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12399831B2Snoop filter scalability
Publication Date: 2025.08.26 NUMASCALE AS
  • US12399831B2 patent drawing
  • US12399831B2 patent drawing
  • US12399831B2 patent drawing

AI summary

The invention relates to a snoop filter device, a node controller, a multicomponent computer system, a computer-implemented method, a data processing system and a computer-readable storage medium aiming at enabling improved tracking of a scalable number of cache elements in multiprocessor systems. The invention involves scaling of a snoop filter device according to the number of cache elements that it is desirable to track.