Memory Allocation Prioritization for Isolated Workspaces

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Information handling systems face memory bottlenecks and responsiveness issues due to memory-intensive workloads in software containers, particularly in productivity applications like ArchiCAD and video editing, which are limited by available memory resources.

Innovation Solution

The system prioritizes memory allocation by deallocating existing memory allocations and reallocating higher-speed system memory to memory-intensive workspaces while assigning lower-speed memory to less intensive ones, using a combination of DRAM Near Memory and PMEM Far Memory technologies, managed by a host programmable integrated circuit.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If memory is allocated to software container workspaces executing memory-intensive applications, then application functionality is enabled, but system memory resources are depleted causing bottlenecks and slow responsiveness

Engineering Contradiction:
Improveapplication responsivenessVSAvoidavailable memory resources
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The system segments memory resources into different priority levels, creating isolated memory pools for different workspace types. High-priority workspaces (productivity applications) receive guaranteed memory allocations from dedicated pools, while low-priority workspaces (batch processing) use separate pools. This segmentation prevents memory-intensive low-priority tasks from depleting resources needed by high-priority applications, resolving the bottleneck issue.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent implements local quality by providing different memory allocation strategies to different workspaces based on their specific needs. Productivity workspaces receive high-priority memory allocations with guaranteed responsiveness, while batch processing workspaces receive lower-priority allocations. Each workspace type gets tailored memory treatment rather than uniform allocation, optimizing overall system performance.

Inventive Principle:
Principle #3Local quality

2Productivity

If conventional memory allocation is used for isolated workspaces, then system simplicity is maintained, but memory-intensive productivity applications experience bottlenecks

Engineering Contradiction:
Improvememory-intensive application performanceVSAvoidmemory allocation system
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent introduces an intermediary layer (memory management subsystem with priority queues and allocation policies) between the physical memory resources and the workspace applications. This intermediary automatically manages memory distribution based on workspace priority and type, shielding applications from the complexity of memory management while ensuring optimal performance for productivity applications.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The memory allocation system is made dynamic through real-time monitoring of workspace memory usage and automatic adjustment of allocations. The system continuously adapts memory distribution based on current workload conditions, workspace priority levels, and available resources, allowing productivity applications to receive increased memory when needed without manual intervention.

Inventive Principle:
Principle #15Dynamics

3Reliability

If all workspaces are allocated equal memory resources, then fairness is maintained, but memory-heavy workspaces suffer from resource starvation

Engineering Contradiction:
Improveworkspace execution reliabilityVSAvoidworkspace responsiveness
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent changes the allocation parameter from equal distribution to priority-based distribution. Workspaces are assigned different priority levels and memory allocation parameters based on their type and resource requirements. Productivity applications receive higher priority allocations ensuring reliable execution, while batch processing tasks receive lower priority allocations, preventing resource starvation for critical workspaces.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11928511B2Systems and methods for prioritizing memory allocation for isolated computing workspaces executing on information handling systems
Publication Date: 2024.03.12 DELL PROD LP
  • US11928511B2 patent drawing
  • US11928511B2 patent drawing
  • US11928511B2 patent drawing

AI summary

Systems and methods are provided for prioritizing system memory for separate isolated computing workspaces (e.g., cloud-based software containers) that are executing together on an information handling system by reallocating higher performance system memory to higher-ranked computing workspace/s. In one example, the disclosed systems and methods may be implemented to optimize system memory usage for memory-heavy heterogeneous workloads of workspaces that are simultaneously executing together as modern clients on an information handling system.