Clustered Memory Management Engine for Remote Access

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional clustered memory systems require remote memory access software for accessing remote memory subsystems, which complicates configuration and integration, and do not allow for 'true' memory reference operations like local memory access.

Innovation Solution

An Information Handling System with a secondary processing subsystem and memory subsystem that includes a clustered memory management engine, which receives processor memory-centric access requests, determines remote memory access, and generates necessary information for remote memory operations using hardware, instructing a networking device to perform these operations.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If remote memory access software is used to access remote memory subsystems, then remote memory access is enabled, but system complexity and integration difficulty increase

Engineering Contradiction:
Improveremote memory access capabilityVSAvoidsystem complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The patent introduces a network controller as an intermediary device that includes a remote memory access engine. This engine translates processor memory-centric access requests into network communications, enabling remote memory access without requiring complex software layers on the processor side. The network controller acts as a mediator between the local processing system and remote memory subsystems, simplifying the overall system architecture.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces the software-based remote memory access mechanism with a hardware-based solution. The remote memory access engine is implemented as hardware logic within the network controller, substituting the need for remote memory access software, middleware, libraries, and sockets. This hardware implementation reduces system complexity while maintaining remote memory access functionality.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Adaptability or versatility

If remote memory access software is used, then remote memory can be accessed, but processing efficiency decreases due to software overhead

Engineering Contradiction:
Improveremote memory access capabilityVSAvoidprocessing efficiency
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The patent replaces software-based remote memory access with hardware-based processing. The remote memory access engine in the network controller performs memory access operations in hardware, eliminating the overhead associated with remote memory access software, middleware, libraries, and socket operations. This hardware implementation significantly improves processing efficiency by handling remote memory access at the network controller level rather than through software layers.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

Solution Approach 2:

The patent enables the network controller to pre-process and translate memory access requests before they reach the processor. The remote memory access engine prepares network communications in advance, converting processor memory-centric access requests into appropriate network protocols. This preliminary action reduces the processing burden on the main processor and improves overall system efficiency.

Inventive Principle:
Principle #10Preliminary action

3Adaptability or versatility

If software-based remote memory access is implemented, then remote memory operations are possible, but configuration and integration become complicated

Engineering Contradiction:
Improveremote memory access capabilityVSAvoidconfiguration ease
Core Design Contradiction:
Adaptability or versatilityVSEase of manufacture

Solution Approach 1:

The network controller serves as a configured intermediary that handles the complexity of remote memory access setup. Configuration parameters such as remote memory addresses, network endpoints, and access protocols are stored in the network controller's memory, eliminating the need for complex software configuration on the processor side. This makes the system easier to manufacture and deploy.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent uses the same memory-centric access interface for both local and remote memory operations. The processor interacts with remote memory through the same pointer-based semantics used for local memory, creating a simplified copy of the local memory access model. This abstraction layer hides the complexity of remote access mechanisms from the processor and application software.

Inventive Principle:
Principle #26Copying

4Productivity

If hardware-based remote memory access is used, then processing efficiency improves, but device complexity in the network controller increases

Engineering Contradiction:
Improveprocessing efficiencyVSAvoidnetwork controller complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent merges the remote memory access engine with the network controller into a single integrated device. This combination consolidates network communication functions and remote memory access functions in one component, avoiding the need for separate hardware elements. The merging reduces overall system complexity while maintaining the processing efficiency benefits of hardware-based remote memory access.

Inventive Principle:
Principle #5Merging (Combining)

Data Source

PatentUS11334245B1Native memory semantic remote memory access system
Publication Date: 2022.05.17 DELL PROD LP
  • US11334245B1 patent drawing
  • US11334245B1 patent drawing
  • US11334245B1 patent drawing

AI summary

A clustered memory system includes a first computing system coupled to a second computing system via a network, and including a clustered memory management subsystem coupled to a central processing subsystem and a networking device. The clustered memory management subsystem receives a processor memory-centric access request associated with a memory access operation from the central processing subsystem, and uses memory management hardware to determine that the processor memory-centric access request is directed to a second memory subsystem in the second computing system. The clustered memory management subsystem then uses remote memory access hardware to generate memory access information for performing the memory access operation at the second memory subsystem, and instructs the networking device to utilize the memory access information to transmit at least one memory access communication that provides for the performance of the memory access operation at the second memory subsystem.