SSD Stream Mapper Namespace Logical Hardware Allocation
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional multi-streaming schemes for solid-state drives (SSDs) do not effectively utilize the association of logical streams with namespaces, leading to inefficient resource allocation and increased write amplification factors due to a limited number of hardware streams.
Innovation Solution
A stream mapper that receives logical streams from multiple namespaces, determines their characteristics, and assigns them to hardware streams based on configurable assignment modes such as proportional, fair and balanced, even and proportional, and hybrid auto-streaming schemes, dynamically adjusting resource allocation based on I/O processes.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of energy
If conventional multi-streaming schemes are used to store related data on the same physical erase blocks, then write amplification factor is reduced, but the number of hardware streams is limited (8-16 streams) while modern SSDs support many more independent namespaces and logical streams
Solution Approach 1:
The patent segments the stream mapping function into multiple hierarchical levels: namespace-level segmentation where each namespace is assigned dedicated hardware streams, and logical stream-level segmentation where multiple logical streams within a namespace share those hardware streams. This segmentation allows the system to support many more logical streams than hardware streams by organizing them in a tree-like hierarchy, resolving the contradiction between limited hardware streams and the need to support many namespaces and logical streams while maintaining multi-streaming benefits for reduced write amplification
Solution Approach 2:
The patent introduces a new dimensional organization by creating a hierarchical mapping structure with multiple levels (namespace level and logical stream level) rather than a flat one-to-one mapping. This dimensional change allows the system to accommodate many more logical streams than hardware streams by organizing them in a tree-like hierarchy across multiple dimensions, enabling support for numerous namespaces and logical streams while maintaining efficient multi-streaming operation with reduced write amplification
2Device complexity
If the number of hardware streams is fixed, then device complexity is reduced, but the number of logical streams must be varied and dynamically managed
Solution Approach 1:
The patent implements dynamic stream mapping where the mapping between logical streams and hardware streams is not fixed but can be adjusted based on workload characteristics, namespace priorities, and I/O patterns. The system dynamically determines characteristics of logical streams and selects appropriate assignment modes (proportional, fair and balanced, even and proportional, or hybrid auto-streaming), allowing the fixed hardware streams to efficiently serve a variable number of logical streams through adaptive resource allocation
Solution Approach 2:
The patent changes the parameter of stream assignment from static to dynamic by introducing configurable assignment modes that can be selected based on system state and requirements. The system monitors characteristics of logical streams and adjusts the mapping parameters (such as proportion of streams allocated to each namespace, fairness factors, or even distribution ratios) to optimize performance while maintaining a fixed number of hardware streams, thus managing adaptability through parameter variation rather than structural change
Data Source
AI summary
A method includes: receiving logical streams from a plurality of namespaces; determining characteristics of logical streams associated with the plurality of namespaces; selecting a configurable assignment mode; and assigning the logical streams associated with the plurality of namespaces to a plurality of hardware streams to access physical storage blocks associated with a data storage device based on the characteristics of the logical streams and the configurable assignment mode. A number of hardware streams to access the physical storage blocks associated with the data storage drive is fixed, and a number of logical streams associated with the plurality of namespaces is varied depending on I/O processes running on a host computer.


