NUMA Memory Access with Ethernet Switch Fabric Coherence

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional data processing systems are inefficient in handling petabyte-scale data sets, leading to impractical or impossible analysis due to inadequate high-bandwidth access and parallel processing capabilities.

Innovation Solution

A scalable data processing system architecture featuring multiple CPU subsystems, memory complexes, and an Ethernet switch fabric, with software-implemented flash translation layer policies and replication interfaces, enabling efficient parallel access and data replication across interconnected memory leaves.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If conventional data processing systems are used, then system simplicity is maintained, but high-bandwidth access to petabyte-scale data sets is inefficient or impossible

Engineering Contradiction:
Improvehigh-bandwidth access capabilityVSAvoidsystem architecture complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system is divided into multiple processing nodes, each with its own memory controllers and cache memory units. This segmentation allows parallel access to data across multiple nodes, achieving high-bandwidth access to petabyte-scale data sets while maintaining manageable complexity at each node level.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a multi-dimensional memory hierarchy with cache memory units at each processing node and distributed memory across the network. This dimensional expansion from single-node to multi-node architecture enables scalable high-bandwidth access without linearly increasing overall system complexity.

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

2Productivity

If multiple processing nodes are introduced to enable parallel processing, then processing throughput is improved, but maintaining cache coherence becomes more difficult

Engineering Contradiction:
Improveparallel processing throughputVSAvoidcache coherence management
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The system implements a feedback mechanism where cache memory units monitor and track data state across processing nodes. When data is modified in one node's cache, the system automatically manages coherence by invalidating or updating corresponding caches in other nodes, enabling parallel processing while maintaining data consistency.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The patent introduces intermediary structures including memory controllers and coherence management logic that mediate between processing nodes and distributed memory. These intermediaries handle the complex cache coherence protocols, allowing processing nodes to operate in parallel while the intermediaries maintain system-wide data consistency.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If distributed memory architecture is implemented across multiple nodes, then data access scalability is improved, but access time non-uniformity increases

Engineering Contradiction:
Improvedata access scalabilityVSAvoidmemory access time variation
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system implements local cache memory units at each processing node that store frequently accessed data locally. This local quality optimization reduces access time for local data while maintaining scalability, as nodes preferentially access their own caches before reaching out to remote memory, thereby reducing the impact of non-uniform access times.

Inventive Principle:
Principle #3Local quality

Solution Approach 2:

The patent employs preliminary data placement and caching strategies where data is pre-loaded into local cache memory units before being needed by processing nodes. This preliminary action reduces the variability in access times by ensuring that frequently accessed data is already positioned in optimal locations, minimizing remote access requirements.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS10515014B1Non-uniform memory access (NUMA) mechanism for accessing memory with cache coherence
Publication Date: 2019.12.24 EMC IP HLDG CO LLC
  • US10515014B1 patent drawing
  • US10515014B1 patent drawing
  • US10515014B1 patent drawing

AI summary

According to one embodiment, a data processing system includes a plurality of processors, each of the processors being coupled to each of remaining processors via a processor interconnect, a plurality of memory controllers, each memory controller corresponding to one of the processors, a plurality of memory targets, each memory target includes one or more branches and a plurality of memory leaves for storing data, and an Ethernet switch fabric coupled to the memory controllers and the memory targets. When a first of the memory controllers writes data to a first of the memory leaves, the first memory controller sends a cache coherence message to remaining ones of the memory controllers to indicate that the data stored in the first memory leaf has been updated, such that any of the remaining memory controllers can update its cache by fetching the data from the first memory leaf.