Storage Device Transformation Engine Offloading
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In computing systems, relying on the host CPU to perform data transformations before storing data in a storage device leads to unnecessary latencies and strains on system resources, such as CPU cycles and storage bus bandwidth.
Innovation Solution
Offloading data transformations from the host CPU to a storage device, like a solid-state drive (SSD), which can perform transformations on incoming objects and store both original and transformed data, thereby freeing up CPU cycles and memory bandwidth.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If the host CPU performs data transformations before storing data in the storage device, then the data processing is completed with full control, but the system experiences unnecessary latencies and CPU cycles are strained
Solution Approach 1:
The patent extracts the data transformation function from the host CPU and relocates it to the storage device. The host CPU sends transformation commands and data to the storage device, which then performs the transformations using its dedicated transformation engine, freeing the host CPU from this computational burden and reducing system latency.
Solution Approach 2:
The patent introduces a transformation engine as an intermediary component within the storage device that acts as a mediator between the host CPU and the storage media. This transformation engine handles the complex data transformation operations, allowing the host CPU to maintain control while the storage device performs the actual transformations, thus reducing latency and CPU strain.
2Measurement precision
If the host CPU performs data transformations, then processing accuracy is maintained, but storage bus bandwidth is strained and system resources are consumed
Solution Approach 1:
The patent extracts the transformation workload from the host CPU and transfers it to the storage device's transformation engine. This reduces the strain on system resources including CPU cycles and storage bus bandwidth, while the transformation engine maintains processing accuracy through dedicated hardware implementation.
Solution Approach 2:
The storage device performs transformations on data that it has already received from the host, essentially serving itself by processing the data before storing it. This self-service capability reduces the need for additional CPU intervention and minimizes the strain on storage bus bandwidth while maintaining processing accuracy.
3Ease of operation
If data transformations are performed on the host before storage, then the host has full control over the process, but the storage operation takes longer due to sequential processing
Solution Approach 1:
The patent extracts the transformation operation from the host CPU sequence and moves it to the storage device. The host CPU can send multiple transformation commands in parallel to the storage device, which then executes them using its transformation engine, significantly improving storage operation speed while the host maintains control through command issuance.
Solution Approach 2:
The storage device performs transformations as a preliminary action before the actual storage operation. By having the transformation engine process data immediately upon receipt and before writing to storage media, the system eliminates the need for sequential host-based transformation followed by storage, thereby improving overall productivity.
Data Source
AI summary
In one embodiment, a storage device comprises non-volatile storage media; a controller to receive, from a host, an object definition command that identifies a first data object and a second data object and a transformation to apply to the first data object and the second data object to generate a first transformed object and store the first transformed object in the non-volatile storage media; and a transformation engine to apply the transformation to the first data object and the second data object.


