Host Memory Buffer Sizing for Storage Metadata and Data Load
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage devices face challenges in handling increasing data and metadata volumes due to resource constraints such as cost and design limitations, making it difficult to implement sufficient memory for buffering.
Innovation Solution
A storage system that includes a host device and a storage device, where the host device allocates a portion of its memory as a host memory buffer (HMB) based on an HMB ID generated by the storage device, considering communication speed and capacity, and the storage device monitors and adjusts the HMB size accordingly.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If the storage device allocates sufficient memory to buffer large amounts of data and metadata, then the storage device can handle increased data loads, but the device size, cost, and resource requirements increase
Solution Approach 1:
The patent introduces host memory as an intermediary resource that the storage device can utilize through the HMB mechanism. Instead of increasing onboard memory, the storage device leverages the host's memory resources, effectively resolving the contradiction between needing more buffer capacity and maintaining limited device size.
Solution Approach 2:
The host memory serves multiple functions: it acts as system memory for the host device and simultaneously functions as a buffer for the storage device through HMB allocation. This multi-functionality allows the same physical memory resources to benefit both devices, eliminating the need for dedicated buffer memory in the storage device.
2Productivity
If the storage device increases memory resources to handle more data, then data handling capability improves, but cost increases
Solution Approach 1:
The HMB mechanism acts as an intermediary that enables the storage device to access host memory resources without directly possessing them. This allows the storage device to achieve enhanced data handling capability while avoiding the cost of purchasing and integrating additional memory components.
Solution Approach 2:
The host device provides memory resources to the storage device through the HMB mechanism, essentially serving itself by utilizing its own memory capacity for dual purposes. This self-service approach eliminates the need for external memory additions to the storage device.
3Ease of operation
If the storage device allocates fixed memory buffer size, then implementation is simpler, but performance optimization under varying conditions is limited
Solution Approach 1:
The HMB size is dynamically adjustable rather than fixed. The storage device can monitor communication conditions and request different HMB sizes from the host based on actual performance needs, enabling adaptation to varying workloads while maintaining relatively simple implementation through standardized interface commands.
Solution Approach 2:
The system changes the parameter of HMB size based on communication speed and workload conditions. By adjusting this single parameter, the system achieves performance optimization across different operating scenarios without complex structural changes or multiple fixed configurations.
Data Source
AI summary
A storage system may include: a host device including a host memory and configured to: set a size of a host memory buffer (HMB) based on an HMB ID indicating the size of the HMB; and allocate a portion of the host memory as the HMB, the portion corresponding to the size of the HMB. The storage system may further include a storage device including a non-volatile memory and configured to: generate the HMB ID indicating the size of the HMB, which is based on capacity of the non-volatile memory and communication speed between the host device and the storage device; and transmit the HMB ID to the host device.


