Dynamic Memory Page Replication in NUMA Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current memory management techniques in virtual machine systems are inefficient due to manual and static decisions regarding page size, placement, and replication, leading to performance penalties and resource wastage, particularly in Non-Uniform Memory Access (NUMA) architectures, where page placement and replication decisions are not optimized dynamically.

Innovation Solution

A dynamic memory management system that utilizes a nomination module to collect memory statistics from Performance Monitoring Units (PMUs) to identify heavily accessed pages and regions, dynamically migrating, replicating, or promoting them to optimize page placement and reduce cross-node access penalties, thereby eliminating the need for continuous manual oversight.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Device complexity

If manual and static memory management decisions are used for page size, placement, and replication, then system complexity is reduced, but memory management efficiency and performance deteriorate

Engineering Contradiction:
Improvememory management complexityVSAvoidmemory management efficiency
Core Design Contradiction:
Device complexityVSProductivity

Solution Approach 1:

The patent implements dynamic memory management by continuously monitoring memory access patterns and automatically adjusting page size, placement, and replication decisions based on real-time workload characteristics, replacing static manual configuration with adaptive automated control

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system employs feedback mechanisms by monitoring memory access patterns and performance metrics, then using this information to dynamically adjust memory management decisions, creating a closed-loop control system that continuously optimizes memory allocation

Inventive Principle:
Principle #23Feedback

2Measurement precision

If small page size is selected for heavily accessed regions, then tracking granularity is improved, but TLB pressure increases reducing performance

Engineering Contradiction:
Improvetracking granularityVSAvoidmemory access performance
Core Design Contradiction:
Measurement precisionVSProductivity

Solution Approach 1:

The patent dynamically adjusts page size based on access patterns and workload characteristics, selecting smaller pages for regions requiring fine-grained tracking control and larger pages for regions where TLB performance is critical, optimizing the trade-off between tracking granularity and TLB pressure

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the page size parameter dynamically based on monitored memory access patterns and performance metrics, adapting the granularity of memory management to match the actual workload requirements rather than using a fixed page size

Inventive Principle:
Principle #35Parameter changes

3Quantity of substance

If large page size is selected for infrequently accessed regions, then memory usage is optimized, but tracking granularity is lost leading to incorrect swap choices

Engineering Contradiction:
Improvememory usage efficiencyVSAvoidtracking granularity
Core Design Contradiction:
Quantity of substanceVSMeasurement precision

Solution Approach 1:

The patent implements dynamic page size selection that adapts to the actual access patterns of memory regions, using larger pages for infrequently accessed regions to optimize memory usage while maintaining smaller pages for frequently accessed regions where fine-grained tracking is essential for correct swap decisions

Inventive Principle:
Principle #15Dynamics

4Quantity of substance

If pages are placed in remote memory nodes in NUMA architecture, then memory capacity is increased, but access time increases due to non-uniform memory access

Engineering Contradiction:
Improvememory capacityVSAvoidmemory access time
Core Design Contradiction:
Quantity of substanceVSSpeed

Solution Approach 1:

The patent applies local quality optimization by placing frequently accessed pages in local memory nodes closest to the processing units that access them, while using remote memory nodes primarily for capacity expansion and storing less frequently accessed data, thereby minimizing the impact of non-uniform memory access times

Inventive Principle:
Principle #3Local quality

Data Source

PatentUS10761957B2Optimization of operating system and virtual machine monitor memory management
Publication Date: 2020.09.01 RED HAT ISRAEL
  • US10761957B2 patent drawing
  • US10761957B2 patent drawing
  • US10761957B2 patent drawing

AI summary

A method and system for collecting statistics associated with multiple memory nodes to determine if a read-only page is read accessed in aggregate by multiple processing devices of the multiple memory nodes at or above a first threshold value. If so, the read-only page may be replicated to an additional memory node. If a determination is made that the read-only page is read accessed in aggregate by the multiple processing devices below the first threshold value, the read-only page may be de-replicated upon receipt of a write request associated with the read-only page.