Implicit Data Placement via System Characteristic Mapping
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing data placement methods in storage devices, such as SSDs, require host interruption for injecting placement IDs, leading to consistent latency and performance limitations, especially for workloads with large write streams.
Innovation Solution
The implementation of a data placement table within the storage device allows for implicit data placement by mapping system characteristics to placement IDs, enabling write requests to be routed to specific memory subsets without host intervention.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If host interruption is used for placement ID injection, then data placement control is achieved, but write performance deteriorates due to additional latency
Solution Approach 1:
The storage device autonomously determines placement IDs using a data placement table and system characteristics (e.g., submission queue ID, CQ ID) without requiring host intervention. The device self-services the data placement control function that previously required host involvement, thereby eliminating the latency associated with host interruptions while maintaining placement adaptability.
Solution Approach 2:
The data placement table is pre-populated with mappings between system characteristics and placement IDs before write operations occur. This preliminary action allows the device to quickly determine appropriate placement IDs during write operations without real-time host intervention, resolving the contradiction between control adaptability and write performance.
2Measurement precision
If host interruption is used for placement ID injection, then placement accuracy is maintained, but I/O latency increases
Solution Approach 1:
The device autonomously queries the data placement table using system characteristics from incoming write requests to determine placement IDs without host interruption. This self-service mechanism maintains placement accuracy by using the same mapping logic that the host would use, while eliminating the time loss associated with host I/O interruptions.
Solution Approach 2:
The data placement table is pre-configured with accurate mappings between system characteristics and placement IDs. This preliminary action ensures that when the device autonomously determines placement IDs during write operations, it achieves the same placement accuracy as host-controlled methods without incurring I/O latency.
3Productivity
If implicit data placement is implemented, then write performance improves by eliminating host interruption, but device complexity increases due to data placement table
Solution Approach 1:
The device implements autonomous data placement using a data placement table that maps system characteristics to placement IDs. This self-service approach improves write performance by eliminating host interruptions while the complexity increase is limited to the table structure, which is a simple data structure rather than complex control logic.
Solution Approach 2:
The data placement table serves multiple functions: it stores placement ID mappings, enables autonomous placement decisions, and adapts to different workload types through system characteristic matching. This multi-functionality justifies the added complexity by consolidating multiple data placement capabilities into a single unified structure.
Data Source
AI summary
A device, non-transitory computer-readable medium and related method, the device including memory and a processing circuitry. Processing circuitry, which is communicatively coupled to the memory, receives a write request from a host, the write request including information indicative of system characteristics and a destination address at which to store data. Processing circuitry determines the system characteristics based on the information indicative of the system characteristics and determines whether any of the system characteristics match with mapped system characteristics of a data placement table, wherein each mapped system characteristic corresponds to a respective placement identification (ID). Processing circuitry determines a location in memory at which to store the data based on one or more placement IDs corresponding to matched mapped system characteristics of the data placement table and without regard to the destination address, and causes the data to be stored at the location.


