Memory Controller QoS Allocation Using Variable Queue Depth

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cloud-based applications face challenges in configuring application performance requirements to achieve bandwidth and quality of service, leading to underutilization of resources and poor customer experiences due to complex host-driven direct placement of user commands, which increases die collision probability and reduces performance.

Innovation Solution

Implementing a memory controller that dynamically manages quality of service enforcement by utilizing a speed of media quality of service determination methodology for multi-queue depth and multi-tenant workloads, allowing hosts to configure QoS bandwidth requirements and enabling SSDs to optimize resource utilization through internal optimization techniques.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If host-driven direct placement of user commands is used to configure application performance requirements, then application performance can be optimized, but die collision probability increases and resource utilization decreases

Engineering Contradiction:
Improveapplication performanceVSAvoidresource utilization
Core Design Contradiction:
ProductivityVSLoss of energy

Solution Approach 1:

The patent introduces an intermediary layer (the memory controller with intelligent placement logic) between the host and memory dies that optimizes command routing. Instead of direct host-driven placement, the controller acts as a mediator that receives commands from the host and intelligently distributes them across memory dies, reducing collisions while maintaining performance. This is evident in the command routing logic that considers die status, workload distribution, and collision probability before assigning commands.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The memory controller implements self-service capabilities by autonomously monitoring die status, tracking workload distribution, and dynamically adjusting command placement without requiring complex host intervention. The controller maintains internal state information about each die and uses this information to make real-time placement decisions, effectively serving itself rather than relying on external host management.

Inventive Principle:
Principle #25Self-service

2Reliability

If complex host-driven direct placement is implemented to achieve bandwidth and quality of service, then service level requirements can be met, but system complexity increases

Engineering Contradiction:
Improvequality of serviceVSAvoidsystem complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent extracts the complex placement logic from the host system and relocates it to the memory controller. By taking out the intelligent routing functionality from the host and embedding it in the controller, the host's complexity is reduced while the controller assumes responsibility for QoS management. This extraction allows the host to use simple queue submission while the controller handles the complex decision-making.

Inventive Principle:
Principle #2Taking out (Extraction)

Solution Approach 2:

The system implements dynamic command placement that adapts to changing workload conditions in real-time. The controller continuously monitors die status, command queues, and performance metrics, then dynamically adjusts placement strategies accordingly. This dynamic behavior allows the system to maintain QoS guarantees without requiring static, pre-configured complex host logic.

Inventive Principle:
Principle #15Dynamics

3Productivity

If resource allocation is optimized for specific workloads, then performance improves, but adaptability to different workload types decreases

Engineering Contradiction:
ImproveperformanceVSAvoidworkload flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The memory controller implements universal placement logic that can effectively handle multiple workload types without requiring workload-specific configuration. The intelligent routing algorithm is designed to adapt to different command patterns, access workloads, and performance requirements using the same core mechanism. This multi-functional approach allows the system to optimize performance across diverse workloads while maintaining a single, unified control structure.

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

Solution Approach 2:

The system dynamically changes placement parameters based on observed workload characteristics and system state. Rather than being fixed to a specific placement strategy, the controller adjusts its routing parameters, queue depths, and die selection criteria in response to changing workload demands. This parameter adaptability enables the system to maintain high performance across different workload types without sacrificing versatility.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS20260032091A1Managing quality of service by allocating die parallelism with variable queue depth
Publication Date: 2026.01.29 SK HYNIX NAND PRODUCT SOLUTIONS CORP
  • US20260032091A1 patent drawing
  • US20260032091A1 patent drawing
  • US20260032091A1 patent drawing

AI summary

Systems, apparatuses and methods provide for a memory controller to manage quality of service enforcement. For example, a memory controller includes logic to determine a plurality of projected bandwidth levels and a plurality of projected quality of service levels on a user-by-user basis. The projected bandwidth levels and the projected quality of service levels are determined for a plurality of device configurations based on one or more storage device parameters. A requested bandwidth level and a requested quality of service level is received from a host in response to the plurality of projected bandwidth levels and the plurality of projected quality of service levels.