Disaggregated Vector Tables for Low-Overhead Snoop Filtering

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cache coherence systems face inefficiencies due to over-snooping, which increases latency, consumes excessive interconnect bandwidth, and wastes energy, particularly in multi-processor systems with many agents, and precise tracking solutions incur high area and power costs.

Innovation Solution

Implementing a hybrid snoop filter (SFT) that dynamically switches between precise (AID), imprecise, and disaggregated vector table (DVT) tracking modes, using a DVT to store tracking vectors separately, reducing overhead and power consumption while maintaining precise tracking for shared data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If precise tracking is implemented to track all agents caching shared data, then cache coherence accuracy is improved, but area and power consumption increase significantly

Engineering Contradiction:
Improvetracking precisionVSAvoidpower consumption
Core Design Contradiction:
Measurement precisionVSUse of energy by stationary object

Solution Approach 1:

The patent segments the tracking system into two parts: a compact snoop filter (SF) that tracks a limited number of agents precisely, and a larger disaggregated vector table (DVT) that stores tracking vectors for additional agents. This segmentation allows the system to maintain high tracking precision while reducing the power consumption of the frequently accessed SF structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent extracts the bulk of the tracking vector storage from the snoop filter structure and places it in a separate DVT. The SF retains only the essential tracking information for a small number of agents, while the DVT holds the complete tracking vectors for all agents. This extraction reduces the area and power of the SF while maintaining overall tracking precision.

Inventive Principle:
Principle #2Taking out (Extraction)

2Measurement precision

If a large snoop filter is used to track all agents, then tracking precision is improved, but area and access latency increase

Engineering Contradiction:
Improvetracking precisionVSAvoidaccess latency
Core Design Contradiction:
Measurement precisionVSLoss of time

Solution Approach 1:

The patent segments the tracking system into a small, fast snoop filter and a larger, slower disaggregated vector table. The SF provides fast access for the most recently accessed shared data and agents, while the DVT provides complete tracking information when needed. This segmentation reduces access latency for common cases while maintaining tracking precision through the DVT.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies local quality by making the snoop filter small and fast for frequently accessed data, while the disaggregated vector table provides comprehensive tracking information. The system dynamically selects between SF-only mode, DVT-only mode, or hybrid mode based on the specific access pattern, optimizing for local performance characteristics.

Inventive Principle:
Principle #3Local quality

3Use of energy by stationary object

If imprecise tracking is used to reduce area and power, then resource consumption is reduced, but over-snooping increases latency and energy usage

Engineering Contradiction:
Improvepower consumptionVSAvoidaccess latency
Core Design Contradiction:
Use of energy by stationary objectVSLoss of time

Solution Approach 1:

The patent implements dynamic tracking mode selection that adapts to different access patterns. The system can switch between SF-only mode (fast, low power, imprecise), DVT-only mode (comprehensive, precise), and hybrid mode (balanced). This dynamic adaptation allows the system to minimize over-snooping and latency by selecting the appropriate precision level for each access scenario.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the tracking precision parameter dynamically based on workload characteristics. For workloads with high spatial locality, the system uses SF-only mode with lower precision but faster access. For workloads requiring comprehensive tracking, the system activates DVT mode. This parameter change allows the system to optimize between precision, area, and latency based on actual usage patterns.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12436890B2Snoop filter with disaggregated vector table
Publication Date: 2025.10.07 MICROSOFT TECHNOLOGY LICENSING LLC
  • US12436890B2 patent drawing
  • US12436890B2 patent drawing
  • US12436890B2 patent drawing

AI summary

The described technology provides a method including receiving a request from an agent for accessing a cogran and for allocating an agent ID to one of a plurality of SFT entries in a snoop filter (SFT), performing a tag lookup function for a tag of the cogran in the SFT to find a matched SFT entry, wherein the matched SFT entry is tracking the tag of the cogran, determining the number n of agents being tracked by the matched SFT entry, and in response to determining that the number n of agents being tracked by the matched entry is above a threshold, storing a DVT index in the tracking_info field of the matched SFT entry, wherein the DVT index selects a DVT entry in a disaggregated vector table (DVT), wherein the selected DVT entry is configured to hold a tracking vector for tracking the agents that have cached the cogran for the matched SFT entry.