Hybrid Hardware-Software Cache Coherency for NUMA Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current multi-processor systems face challenges in cache coherence, where scaling memory capacity independently of processor numbers is costly and inefficient, with hardware-managed cache coherence consuming bandwidth and increasing latency, while software-managed coherence requires complex programming and performs poorly under high protocol events.

Innovation Solution

A hybrid cache-coherent NUMA system that optimally separates software-managed and hardware-managed cache coherency, allowing independent scaling of memory and processors, using a network of communication links to interconnect nodes with node controllers that maintain cache state and ownership information, and switch between hardware and software protocols based on memory access requests.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If hardware-managed cache coherence protocols are used, then cache coherence is maintained, but memory bandwidth is consumed and latency increases

Engineering Contradiction:
Improvecache coherenceVSAvoidmemory bandwidth consumption
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The patent segments the cache coherence management into two distinct parts: hardware-managed coherence for processor-attached memory and software-managed coherence for node-attached memory. This segmentation allows each type of memory to use the most appropriate coherence management approach, reducing overall hardware bandwidth consumption while maintaining coherence where critical.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects between hardware-managed and software-managed coherence protocols based on the memory access request destination. The cache coherence management logic determines whether to use hardware or software management on a per-request basis, optimizing performance and bandwidth usage adaptively.

Inventive Principle:
Principle #15Dynamics

2Quantity of substance

If the number of memory devices is increased to accommodate digital content, then memory capacity increases, but system cost increases

Engineering Contradiction:
Improvememory capacityVSAvoidsystem cost
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The patent divides memory into two categories: processor-attached memory and node-attached memory. This segmentation enables independent scaling of memory capacity without proportionally increasing processor count or system complexity. Node controllers can manage large amounts of memory attached to individual nodes, allowing memory to be added independently of processor requirements.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of memory organization by attaching memory directly to nodes rather than only to processors. This creates a two-dimensional memory hierarchy (processor-attached and node-attached) that allows independent scaling of memory capacity without linearly increasing processor count or system cost.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Loss of energy

If software-managed cache coherence protocols are used, then hardware bandwidth is reduced, but programming complexity increases

Engineering Contradiction:
Improvehardware bandwidth consumptionVSAvoidprogramming complexity
Core Design Contradiction:
Loss of energyVSDevice complexity

Solution Approach 1:

The patent introduces cache coherence management logic as an intermediary layer between hardware and software. This logic automatically manages the selection between hardware-managed and software-managed coherence protocols, shielding application programmers from the complexity of coherence management while still enabling software-managed coherence where appropriate.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If both the number of processors and memory devices are increased, then computing power and memory capacity increase, but system cost increases

Engineering Contradiction:
Improvecomputing powerVSAvoidsystem cost
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments memory management at the node level, with each node having its own controller that can independently manage processor-attached and node-attached memory. This allows memory capacity to be increased independently of processor count, enabling systems to scale memory without proportionally increasing processor count or system cost.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent creates a hierarchical memory architecture with two levels: processor-attached memory and node-attached memory. This two-dimensional organization allows independent scaling of memory capacity without linearly increasing processor count, enabling cost-effective memory expansion while maintaining computing power.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

Data Source

PatentUS11573898B2System and method for facilitating hybrid hardware-managed and software-managed cache coherency for distributed computing
Publication Date: 2023.02.07 HEWLETT PACKARD ENTERPRISE DEV LP
  • US11573898B2 patent drawing
  • US11573898B2 patent drawing
  • US11573898B2 patent drawing

AI summary

A node controller is provided to include a first interface to interface with one or more processors, a second interface including a plurality of ports to interface with node controllers within a base node and other nodes in the cache-coherent interconnect network. The node controller can further include a third interface to interface with a first plurality of memory devices and a cache coherence management logic. The cache coherence management logic can maintain, based on a first circuitry, hardware-managed cache coherency in the cache-coherent interconnect network. The cache coherence management logic can further facilitate, based on a second circuitry, software-managed cache coherency in the cache-coherent interconnect network.