NUMA Memory Access Control with Remote Page Copying
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In NUMA systems, performance is degraded due to remote memory access latency, which affects parallel processing in many-core processors.
Innovation Solution
An apparatus and method that determine whether a memory access is local or remote, and if remote, copy the data to local memory to minimize latency, using page tables and remote page tables to manage memory access.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If remote memory access is performed between nodes or sockets in a NUMA system, then data accessibility is improved, but access latency increases significantly
Solution Approach 1:
The system performs preliminary actions by copying remote memory pages to local memory before actual access is needed. When a remote memory access is detected, the page is proactively copied to local memory, so subsequent accesses can be served locally without incurring remote access latency. This preliminary copying action resolves the contradiction by preparing data in advance to eliminate future time losses.
Solution Approach 2:
The system creates a local copy of remote memory pages in local memory, allowing the processor to access the copied data locally rather than repeatedly accessing remote memory. This copying mechanism maintains data accessibility while eliminating the time penalty of remote access, directly resolving the technical contradiction between accessibility and latency.
2Loss of time
If page copying is performed for remote memory access, then access latency is reduced, but memory management complexity increases
Solution Approach 1:
The system introduces an intermediary memory structure called a remote page table that sits between the virtual memory system and physical memory. This remote page table manages the mapping and copying of remote pages automatically, reducing the complexity burden on the main memory management system while enabling efficient page copying to reduce access latency.
Solution Approach 2:
The memory management system is segmented into local page tables for local memory and remote page tables for remote memory. This segmentation allows independent management of local and remote memory resources, simplifying the overall complexity by dividing the memory management task into manageable segments that can be handled separately.
3Productivity
If remote page tables are generated and maintained, then remote memory access efficiency is improved, but system resource consumption increases
Solution Approach 1:
The system applies partial action by maintaining remote page tables only for the specific memory pages that require remote access, rather than managing all memory uniformly. This selective approach improves remote memory access efficiency for the necessary pages while minimizing the resource consumption associated with maintaining page table structures, avoiding excessive resource usage.
Data Source
AI summary
An apparatus includes a memory configured to store data, and a processor. The processor configured to determine whether an access to the data is a local memory access; determine, based on a result of the determination of whether the access to the data is the local memory access, whether a page fault of the access occurred; determine, based on a result of the determination of whether the page fault occurred, whether the access is a remote access outside a socket; and perform, based on a result of the determination of whether the access is the remote access, the access to the data by copying the data onto a local memory.


