Storage Architecture With NVM Sets for End-to-End Tenant Isolation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing multi-tenant systems struggle to provide effective performance isolation for a large number of tenants, limiting the applicability of existing solutions.

Innovation Solution

A new architecture for storage devices, such as Solid State Drives (SSDs), that implements Non-Volatile Memory (NVM) Sets and submission queues (SQs) with Quality of Service (QoS) levels to achieve end-to-end performance isolation among tenants, using a Weighted Round Robin (WRR) scheduling algorithm and QoS-based partitioning of NAND modules.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If traditional multi-tenant storage systems are used, then system simplicity is maintained, but performance isolation among tenants cannot be achieved

Engineering Contradiction:
Improveperformance isolationVSAvoidsystem architecture
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The storage system is segmented into multiple NVM Sets, each associated with specific cores and submission queues. Each NVM Set is further divided into partitions that can be independently allocated to different tenants, enabling performance isolation through structural segmentation of the storage resource hierarchy.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent introduces a new dimension of isolation by associating NVM Sets with specific CPU cores and submission queues, creating a multi-dimensional isolation architecture that combines core-level, queue-level, and storage-level segmentation to achieve comprehensive tenant isolation.

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

2Reliability

If performance isolation mechanisms are implemented, then QoS guarantees are achieved, but host-side software overhead increases

Engineering Contradiction:
ImproveQoS guaranteeVSAvoidhost-side software overhead
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The storage device autonomously manages QoS enforcement through internal arbitration mechanisms that operate independently of host software. The arbiter within the storage device automatically schedules I/O requests based on tenant priorities and QoS parameters without requiring host-side intervention, reducing host software overhead while maintaining QoS guarantees.

Inventive Principle:
Principle #25Self-service

Solution Approach 2:

The patent introduces an arbiter as an intermediary component that sits between the submission queues and NVM Sets, automatically managing resource allocation and QoS enforcement. This intermediary handles the complexity of QoS management internally, shielding the host system from overhead while ensuring service level agreements are met.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Reliability

If NVM Sets are associated with specific cores, then performance isolation is improved, but adaptability to different core allocations decreases

Engineering Contradiction:
Improveperformance isolationVSAvoidcore allocation flexibility
Core Design Contradiction:
ReliabilityVSAdaptability or versatility

Solution Approach 1:

The association between NVM Sets and cores/submission queues is designed to be dynamic rather than static. The system can reconfigure which cores and submission queues are associated with which NVM Sets based on changing workload requirements and tenant needs, maintaining performance isolation while adapting to different core allocation scenarios.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS12405824B2System architecture providing end-to-end performance isolation for multi-tenant systems
Publication Date: 2025.09.02 SAMSUNG ELECTRONICS CO LTD
  • US12405824B2 patent drawing
  • US12405824B2 patent drawing
  • US12405824B2 patent drawing

AI summary

A system is disclosed. The system may include a processor. The system may also include a first submission queue (SQ) and a second SQ. The first SQ may be associated with a first Quality of Service (QoS) level and the second SQ may be associated with a second QoS level, the first QoS level being different from the second QoS level. An application may be running on the processor and using a first namespace (NS). The processor may be configured to receive a first Non-Volatile Memory (NVM) Set create command to establish a first NVM Set associated with the first SQ. The processor may be further configured to receive a second NVM Set create command to establish a second NVM Set associated with the second SQ. The processor may be further configured to receive a first NS create command to establish a first NS associated with the first NVM Set. The processor may be further configured to receive a second NS create command to establish a second NS associated with the second NVM Set. The processor may be further configured to place an input/output (I/O) request sent from the application to at least one storage device in the first SQ based at least in part on the I/O request being associated with the first NS, the first NS being associated with the first NVM Set, and the first NVM Set being associated with the first SQ.