Page-Based DMA Access to Remote Memory Through Network Interfaces

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Disaggregated memory architectures in data centers experience increased latency due to packet formation and network traversal, which affects the efficiency of resource utilization and management.

Innovation Solution

Implement a system with a direct memory access (DMA) device that uses a memory interface to manage commands for accessing local or remote memory, reducing latency by directly accessing memory pools through a network interface.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If memory pools are located remote from compute nodes to enable disaggregated memory architecture, then memory capacity and resource utilization are improved, but access latency increases due to packet formation and network traversal

Engineering Contradiction:
Improvememory capacityVSAvoidaccess latency
Core Design Contradiction:
Quantity of substanceVSLoss of time

Solution Approach 1:

The system segments memory access operations into two paths: local memory access for time-critical operations and remote memory pool access for capacity expansion. The compute node maintains local memory for low-latency access while connecting to remote memory pools through network interfaces for expanded capacity, allowing the system to benefit from both high speed and large capacity simultaneously

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A network interface device acts as an intermediary between the compute node and remote memory pools. This intermediary manages packet formation, handles network traversal, and buffers data transfers, thereby isolating the compute node from the latency introduced by remote memory access while still enabling access to expanded memory capacity

Inventive Principle:
Principle #24Intermediary (Mediator)

2Adaptability or versatility

If direct network access to remote memory pools is implemented, then memory scalability is improved, but packet formation and processing overhead increases latency

Engineering Contradiction:
Improvememory scalabilityVSAvoidpacket processing latency
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The system performs preliminary actions by pre-establishing network connections and pre-positioning data in local memory buffers before actual memory access operations. The network interface device prepares data packets in advance and maintains connection states, reducing the processing overhead during actual memory access operations and thereby reducing latency while maintaining scalability

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system creates copies of frequently accessed data from remote memory pools into local memory at the compute node. This copying mechanism allows the compute node to access critical data locally with low latency while maintaining the ability to access the full remote memory pool when needed, thus achieving both scalability and low latency for different data types

Inventive Principle:
Principle #26Copying

Data Source

PatentUS20250219861A1Page-based remote memory access using system memory interface network device
Publication Date: 2025.07.03 INTEL CORP
  • US20250219861A1 patent drawing
  • US20250219861A1 patent drawing
  • US20250219861A1 patent drawing

AI summary

Examples described herein and includes at least one processor and a direct memory access (DMA) device. In some examples, the DMA device is to: access a command from a memory region allocated to receive commands for execution by the DMA device, wherein the command is to access content from a local memory device or remote memory node. In some examples, the DMA device is to: determine if the content is stored in a local memory device or a remote memory node based on a configuration that indicates whether a source address refers to a memory address associated with the local memory device or the remote memory node and whether a destination address refers to a memory address associated with the local memory device or the remote memory node. In some examples, the DMA device is to: copy the content from a local memory device or copy the content to the local memory device using a memory interface.