Disaggregated Memory Integration in Operating Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current cloud computing systems face challenges in balancing computational power and memory resources due to increasing memory demands from modern workloads, with over-provisioning and existing software and hardware solutions failing to provide a long-term solution, especially in integrating and optimizing disaggregated memory access within operating systems.

Innovation Solution

The integration of disaggregated memory into cloud computing environments through a method that identifies and monitors local and disaggregated memory, dynamically migrates candidate data based on access frequency, and initializes a disaggregated memory controller to provide seamless access and balancing services, minimizing performance penalties by migrating frequently accessed pages to local memory.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If disaggregated memory is integrated into cloud computing systems to increase memory capacity, then memory resource availability is improved, but access latency increases

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

Solution Approach 1:

The memory system is segmented into local memory (fast, small capacity) and disaggregated memory (slow, large capacity). The local memory is divided into memory domains that are mapped to specific processors, while disaggregated memory is accessed through a memory controller. This segmentation allows the system to maintain fast access for frequently used data while providing access to large amounts of memory when needed.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different memory locations have different access characteristics. Local memory domains provide fast access for processor-specific data, while disaggregated memory provides access to remote memory resources. The system optimizes access patterns by keeping frequently accessed data in local memory domains and allowing access to disaggregated memory for less frequently accessed data.

Inventive Principle:
Principle #3Local quality

2Quantity of substance

If over-provisioning is used to balance computational power and memory resources, then memory availability is improved, but system complexity and cost increase

Engineering Contradiction:
Improvememory availabilityVSAvoidsystem complexity
Core Design Contradiction:
Quantity of substanceVSDevice complexity

Solution Approach 1:

The disaggregated memory system provides a universal memory pool that can be dynamically allocated to multiple computing nodes. Instead of having dedicated memory for each node (over-provisioning), the system creates a shared memory resource that can serve multiple processors and workloads, reducing overall system complexity and cost while maintaining memory availability.

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

A memory controller acts as an intermediary between processors and disaggregated memory. This intermediary manages memory allocation, handles access requests, and coordinates data transfer between local and remote memory, simplifying the overall system architecture compared to direct over-provisioning approaches.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If existing software solutions are implemented to manage memory, then integration capability is improved, but performance optimization is insufficient

Engineering Contradiction:
Improveintegration capabilityVSAvoidperformance optimization
Core Design Contradiction:
Adaptability or versatilityVSProductivity

Solution Approach 1:

The system implements feedback mechanisms to monitor memory access patterns, latency, and performance metrics. Based on this feedback, the memory controller dynamically adjusts memory allocation and access strategies to optimize performance while maintaining integration with the operating system and existing software layers.

Inventive Principle:
Principle #23Feedback

Data Source

PatentUS11733902B2Integrating and increasing performance of disaggregated memory in operating systems
Publication Date: 2023.08.22 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11733902B2 patent drawing
  • US11733902B2 patent drawing
  • US11733902B2 patent drawing

AI summary

Local memory and disaggregated memory may be identified and monitored for integrating disaggregated memory in a computing system. Candidate data may be migrated between the local memory and disaggregated memory to optimize allocation of disaggregated memory and migrated data according to a dynamic set of migration criteria.