Queue Management in Solid State Memory via Load Balancing

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

In non-volatile memory express systems, queue overlap and load imbalances across cores can lead to performance degradation, reduced input/output operations per second (IOPS), and increased latency due to the inefficiencies in managing multiple hosts and their I/O queues.

Innovation Solution

A storage system manager monitors core workloads and identifies queue overlap, notifying hosts to adjust their connections and redistribute I/O queues, thereby improving load balancing and preventing performance degradation.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If multiple hosts connect to a storage system with multiple cores, then the system can handle more I/O operations in parallel, but queue overlap and load imbalance occur causing performance degradation

Engineering Contradiction:
ImproveIOPSVSAvoidperformance consistency
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The storage system manager continuously monitors the workload of each core and detects queue overlap conditions. When overlap is detected, the system provides feedback to the host by notifying it of the load imbalance, enabling the host to adjust its queue distribution strategy to maintain optimal performance

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The storage system manager acts as an intermediary between multiple hosts and the storage cores. It monitors queue assignments, detects overlap conditions, and coordinates with hosts to redistribute queues, thereby preventing performance degradation without requiring changes to the host or storage device hardware

Inventive Principle:
Principle #24Intermediary (Mediator)

2Productivity

If the storage system manager monitors and notifies hosts about load imbalance, then queue overlap is reduced and performance is improved, but system complexity increases

Engineering Contradiction:
ImproveIOPSVSAvoidqueue management complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The host is empowered to self-adjust its queue distribution based on notifications from the storage system manager. The host autonomously redistributes its I/O queues to different cores based on the load imbalance information received, eliminating the need for complex centralized queue management in the storage system

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS11513861B2Queue management in solid state memory
Publication Date: 2022.11.29 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US11513861B2 patent drawing
  • US11513861B2 patent drawing
  • US11513861B2 patent drawing

AI summary

Disclosed is a computer implemented method to manage queue overlap in storage systems, the method comprising, identifying, by a storage system, a plurality of queues including a first queue and a second queue. The storage system includes a plurality of cores, including a first core and a second core, and wherein the first queue is associated with a first host and the second queue is associated with a second host. The method also comprises, determining the first queue and the second queue are being processed by the first core. The method further comprises, monitoring the workload of each cores and identifying a load imbalance, wherein the loam imbalance a difference between a first workload associated with the first core, and a second workload associated with the second core. The method also comprises, notifying the second host that the load imbalance is present.