Hybrid Node-Interleaved and NUMA Memory Architecture

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Information handling systems with physically asymmetrical memory architectures face disadvantages, such as loss of memory-to-processor affinity when node interleaving is enabled, leading to inefficiencies and reduced performance due to the automatic disabling of Non-Uniform Memory Access (NUMA) architecture.

Innovation Solution

A method and system that determine the smallest memory capacity in a multi-node information handling system and allocate node-interleaved memory using portions equal to this capacity, associating unallocated memory portions with their local nodes, thereby enabling hybrid node-interleaved and NUMA memory architectures that maintain memory affinity across all memory ranges.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If node interleaving is enabled in asymmetrical memory architecture, then memory access is balanced across processors, but memory-to-processor affinity is lost and NUMA is automatically disabled

Engineering Contradiction:
Improvememory access balanceVSAvoidmemory access performance
Core Design Contradiction:
Ease of operationVSProductivity

Solution Approach 1:

The memory system is segmented into node-interleaved memory regions and NUMA memory regions. The patent divides memory access into two pathways: balanced node-interleaved access for certain memory ranges and affinity-based NUMA access for others, allowing both modes to coexist without mutual exclusion.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system dynamically selects between node-interleaved and NUMA access modes based on memory address ranges and processor states. The memory controller can switch between access patterns to optimize performance for different workloads and memory configurations.

Inventive Principle:
Principle #15Dynamics

2Temperature

If node interleaving is enabled to balance memory access, then localized heating is reduced, but memory-to-processor affinity is lost leading to reduced performance

Engineering Contradiction:
Improvelocalized heatingVSAvoidmemory access performance
Core Design Contradiction:
TemperatureVSProductivity

Solution Approach 1:

Different memory regions are assigned different access characteristics. Some memory ranges use node-interleaved access to distribute heat, while other ranges maintain NUMA affinity for performance-critical operations. This allows local optimization of both thermal and performance characteristics.

Inventive Principle:
Principle #3Local quality

3Ease of operation

If physically symmetrical memory architecture is used to enable node interleving, then memory access is balanced, but system layout flexibility is reduced

Engineering Contradiction:
Improvememory access balanceVSAvoidsystem layout flexibility
Core Design Contradiction:
Ease of operationVSAdaptability or versatility

Solution Approach 1:

The patent embraces asymmetrical memory configurations by implementing node interleving that works with unequal memory capacities. The system identifies the smallest memory capacity and uses it as the basis for interleaving patterns, allowing processors to have different amounts of local memory while still achieving balanced access.

Inventive Principle:
Principle #4Asymmetry

Data Source

PatentUS8122208B2System and method for memory architecture configuration
Publication Date: 2012.02.21 DELL PROD LP
  • US8122208B2 patent drawing
  • US8122208B2 patent drawing
  • US8122208B2 patent drawing

AI summary

Systems and methods for reducing problems and disadvantages associated with physically asymmetrical memory structures are disclosed. A method for configuring memories in an information handling system having a plurality of memories, each memory local to one of a plurality of nodes, and wherein at least one memory of the plurality of memories has a different memory capacity than at least one other memory of the plurality of memories is provided. The method may include determining a smallest memory capacity of the plurality of memories. The method may also include allocating a node-interleaved memory using a portion of each memory equal to the smallest memory capacity. For each particular memory not fully allocated to the node-interleaved memory, each portion of each particular memory not allocated to the node-interleaved memory may be associated with a node local to the particular memory.