Storage Adapter Queue Offload Using NVMe Controller Memory Buffers
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage adapters configured for non-GPU applications have limited memory resources, constraining queue depths and increasing cost and complexity when scaled for GPU applications with high concurrent data access needs.
Innovation Solution
Offload submission queues to the controller memory buffer of target data storage devices, utilizing the onboard memory resources of NVMe SSDs to manage larger queue depths without additional adapter memory, and preprocess commands using a processor to transform formats.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If adapter memory size is increased to support larger queue depths for GPU applications, then queue depth capability is improved, but adapter cost and size increase
Solution Approach 1:
The patent extracts the submission queue storage function from the adapter memory and relocates it to the storage device's onboard memory. The adapter maintains only the command translation and pre-processing functions, while the actual queue data resides in the storage device memory, eliminating the need for large adapter memory allocations.
Solution Approach 2:
The storage device's onboard memory serves multiple functions: it acts as both the storage device's operational memory and as the submission queue storage for the adapter. This multi-functional use of the same memory resource eliminates the need for separate adapter memory dedicated to queue storage.
2Quantity of substance
If adapter memory size is increased to support larger queue depths, then queue depth capability is improved, but adapter complexity and configuration overhead increase
Solution Approach 1:
The patent removes the burden of managing large queue memory from the adapter, transferring this responsibility to the storage device. This extraction simplifies the adapter's configuration and management while maintaining full queue depth capability through the storage device's existing memory infrastructure.
3Productivity
If hardware offload is implemented to meet performance requirements, then processing performance is improved, but memory resources are constrained for queue management
Solution Approach 1:
The patent introduces the storage device's onboard memory as an intermediary between the adapter's hardware offload processing and the actual queue data storage. This intermediary approach allows hardware offload to maintain high processing performance while the intermediary memory resource (storage device memory) handles the queue data, freeing adapter memory for processing functions.
Data Source
AI summary
Systems, methods, and storage adapters for managing queue limits by offloading storage adapter submission queues to the controller memory buffers of data storage devices are described. The storage adapter may receive host storage commands from host devices in one format and provide those host storage commands to the data storage devices in another format for processing. The storage adapter may use submission queues in the controller memory buffers to store the host storage commands until it can preprocess them between the two formats and then notify the data storage device that the host storage command is available for processing.


