Remote Access Vector for Targeted NUMA Cache Snooping

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In computer systems with non-uniform memory access (NUMA) architecture, lateral snoops are frequent, consuming cross-domain bandwidth and increasing latency, which negatively impacts system performance.

Innovation Solution

Implementing a remote access vector with multiple bits to track copies of data portions across remote processing nodes, allowing focused snooping and reducing unnecessary searches by indicating which remote node has the data, thus conserving bandwidth and power.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If lateral snoops are performed frequently to check for remote copies, then data coherence is maintained, but cross-domain bandwidth consumption increases and latency increases

Engineering Contradiction:
Improvedata coherenceVSAvoidbandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent applies preliminary action by pre-tracking the locations of remote copies using the remote access vector before data coherence issues arise. The system proactively monitors which remote nodes have copies of data portions and stores this information in the restricted-access memory, allowing the processor to directly target specific nodes for coherence checks rather than performing broad lateral snoops across all nodes.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary mechanism - the remote access vector stored in restricted-access memory - that mediates between the need for data coherence and the desire to reduce bandwidth consumption. This intermediary structure provides targeted coherence information without requiring frequent broad snoops, acting as a filter that directs coherence checks only to necessary remote nodes.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Reliability

If lateral snoops are performed frequently to check for remote copies, then data coherence is maintained, but processing latency increases

Engineering Contradiction:
Improvedata coherenceVSAvoidprocessing latency
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary tracking of remote copy locations using the remote access vector, so that when coherence checks are needed, the processor already knows which remote nodes may have copies. This eliminates the need for time-consuming broad snoops across all remote nodes, reducing latency by directing coherence checks only to relevant nodes identified in advance.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The remote access vector serves as an intermediary that stores pre-computed coherence information about remote node locations. This intermediary structure enables fast coherence checks by providing targeted information about which nodes have data copies, avoiding the time-consuming process of broadcasting snoops to all potential remote nodes.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Loss of energy

If remote access vector with multiple bits is implemented to track copies, then focused snooping is enabled and bandwidth is conserved, but device complexity increases

Engineering Contradiction:
Improvebandwidth consumptionVSAvoidmemory structure complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent applies segmentation by dividing the remote access tracking into discrete bits, where each bit corresponds to a specific remote node. This segmentation allows the system to track copy locations efficiently using simple bit-level operations rather than complex data structures. The restricted-access memory is segmented into multiple bits that can be independently managed, simplifying the overall memory structure while enabling targeted snooping.

Inventive Principle:
Principle #1Segmentation

4Measurement precision

If multiple bits are used in remote access vector to track each remote node, then accurate copy tracking is achieved, but restricted-access memory size increases

Engineering Contradiction:
Improvecopy tracking accuracyVSAvoidmemory size
Core Design Contradiction:
Measurement precisionVSVolume of stationary object

Solution Approach 1:

The patent segments the copy tracking information into individual bits, with each bit representing a specific remote node's copy status. This segmentation achieves accurate tracking with minimal memory overhead, as only one bit per remote node is required rather than full word or byte-level tracking. The segmented bit structure provides precise copy location information while keeping the restricted-access memory size small.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system changes the parameter representation from full data structures to simple bit-level parameters. By using boolean-like bit values (0 or 1) for each remote node's copy status, the system achieves accurate tracking with minimal memory consumption. This parameter simplification transforms the memory requirement from large structured data to compact bit fields, balancing accuracy with memory efficiency.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS12579067B1Vector in restricted memory to track remote copies
Publication Date: 2026.03.17 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US12579067B1 patent drawing
  • US12579067B1 patent drawing
  • US12579067B1 patent drawing

AI summary

A first processor chip includes one or more processor cores, one or more cache memories, and a restricted-access memory storing a remote access vector configured to track copies of data portions that are stored in a main memory. The remote access vector includes multiple bits. Each bit of the multiple bits corresponds respectively to one of different remote processing nodes that are able to request and receive one or more of the copies of the data portions and are external to the first processor chip. The bits are respectively set when a respective copy of a particular data portion is transmitted to the corresponding remote processing node.