Agent Controller Prioritized Conflict Handling for NUMA Latency

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In non-uniform memory access (NUMA) multiprocessor systems, remote memory transactions experience higher latency due to increased path lengths and synchronization performance advantages for local processors, leading to imbalanced lock acquisition and conflict resolution delays compared to local memory transactions.

Innovation Solution

The introduction of an intermediate agent controller that performs prioritized conflict handling, utilizing a conflict data cache and conflict resolution logic to reduce remote memory transaction latency while maintaining synchronization, by prioritizing remote read transactions and deferring local snoop transactions when necessary, thereby reducing the latency gap between local and remote memory transactions.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If remote memory transactions are processed through the system interconnect to access local memory of another processor, then memory access flexibility and system scalability are improved, but transaction latency increases due to longer path lengths and synchronization delays

Engineering Contradiction:
Improvememory access flexibilityVSAvoidtransaction latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The patent introduces an intermediate agent controller between the remote processor and the local memory. This agent controller receives remote memory transactions, manages conflict resolution, and facilitates access to the local memory. By inserting this intermediary component, the system can maintain the scalability and flexibility of remote access while reducing the latency penalty through more efficient transaction handling and prioritization mechanisms.

Inventive Principle:
Principle #24Intermediary (Mediator)

2Speed

If local processors have advantage in acquiring locks for coherent memory locations due to proximity, then lock acquisition speed is improved, but remote processor performance deteriorates due to increased lock acquisition latency

Engineering Contradiction:
Improvelock acquisition speedVSAvoidremote lock acquisition latency
Core Design Contradiction:
SpeedVSLoss of time

Solution Approach 1:

The patent implements dynamic priority management in the agent controller that adjusts the handling of local versus remote transactions based on current system conditions. The controller can dynamically prioritize remote transactions over local snoop transactions when conflicts arise, ensuring that remote processors receive fair access to locks and coherent memory locations. This dynamic adjustment eliminates the static proximity advantage that local processors otherwise have, balancing performance across all processors in the system.

Inventive Principle:
Principle #15Dynamics

3Reliability

If conflict resolution serializes memory transactions to maintain ordering and consistency, then data coherence is improved, but transaction throughput decreases due to serialization delays

Engineering Contradiction:
Improvedata coherenceVSAvoidtransaction throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies partial serialization by implementing conflict resolution only at specific critical points in the memory access path rather than universally serializing all transactions. The agent controller selectively serializes transactions only when conflicts are detected, allowing non-conflicting transactions to proceed in parallel. This partial action approach maintains data coherence where needed while maximizing throughput by avoiding unnecessary serialization delays for independent transactions.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9619303B2Prioritized conflict handling in a system
Publication Date: 2017.04.11 HEWLETT PACKARD ENTERPRISE DEV LP
  • US9619303B2 patent drawing
  • US9619303B2 patent drawing
  • US9619303B2 patent drawing

AI summary

A controller has a cache to store data associated with an address that is subject to conflict resolution. A conflict resolution queue stores information relating to plural transactions, and logic reprioritizes the plural transactions in the conflict resolution queue to change a priority of a first type of transaction with respect to a priority of second type of transaction.