Load Balancing Daemon for Heterogeneous Memory Systems

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Computer systems with multiple storage devices often face performance issues due to workload imbalances, particularly in Solid State Drives (SSDs) where write operations are slower than read operations, leading to reduced overall system performance.

Innovation Solution

A load balancing daemon identifies the busiest and idlest storage devices based on update counts and migrates hot pages from the busiest device to the idlest one to balance their loads, using a cache-coherent interconnect protocol like Compute Express Link (CXL) to manage data migration and extend memory across heterogeneous storage devices.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Quantity of substance

If multiple storage devices are used to extend system memory, then memory capacity is increased, but workload imbalance occurs across devices leading to reduced system performance

Engineering Contradiction:
Improvememory capacityVSAvoidsystem performance
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The system dynamically monitors workload metrics (read counts, write counts, garbage collection frequency) across storage devices and automatically migrates memory pages from overloaded devices to underutilized devices. This dynamic load balancing ensures that no single storage device becomes a performance bottleneck, maintaining optimal system performance while utilizing extended memory capacity.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

A load balancing daemon continuously collects feedback from storage devices regarding their current workload state, including read/write counts and garbage collection metrics. Based on this feedback, the system makes informed decisions about page migration to balance loads, creating a closed-loop control system that adapts to changing workload conditions.

Inventive Principle:
Principle #23Feedback

2Reliability

If write operations are performed frequently on SSDs, then data is updated, but write speed is slower than read speed reducing overall efficiency

Engineering Contradiction:
Improvedata update capabilityVSAvoidwrite operation efficiency
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The system performs preliminary actions by proactively migrating memory pages from storage devices with high write counts to devices with lower write counts before the overloaded device becomes a bottleneck. This preventive load balancing reduces the frequency of garbage collection operations and maintains write efficiency across the storage system.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system changes operational parameters by monitoring write counts and other metrics to determine when load balancing is needed. When a storage device's write count exceeds a threshold or shows signs of degradation, the system adjusts the distribution of memory pages across devices to optimize write performance and extend device lifespan.

Inventive Principle:
Principle #35Parameter changes

3Ease of operation

If storage devices handle uneven workloads, then some devices become overloaded, but this increases garbage collection runs and reduces device lifespan

Engineering Contradiction:
Improveworkload distributionVSAvoiddevice lifespan
Core Design Contradiction:
Ease of operationVSDuration of action of stationary object

Solution Approach 1:

The system dynamically adjusts workload distribution by monitoring garbage collection frequency and write counts on each storage device. When a device shows signs of overload or degradation, the load balancing daemon migrates memory pages to other devices, preventing excessive garbage collection runs and extending the operational lifespan of storage devices.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS20230017824A1Systems and methods for load balancing in a heterogeneous memory system
Publication Date: 2023.01.19 SAMSUNG ELECTRONICS CO LTD
  • US20230017824A1 patent drawing
  • US20230017824A1 patent drawing
  • US20230017824A1 patent drawing

AI summary

A system is disclosed. The system may include a processor and a memory connected to the processor. A first storage device may be connected to the processor. The first storage device may include a first storage portion, which may include a memory page. The first storage portion may extend the memory. A second storage device may also be connected to the processor. The second storage device may also include a second storage portion. The second storage portion may also extend the memory. A load balancing daemon may migrate the memory page from the first storage portion of the first storage device to the second storage portion of the second storage device based at least in part on a first update count of the first storage device and a second update count of the second storage device.