Storage Device Cache Flow Control via Dynamic Bandwidth Adjustment
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Storage devices face performance deterioration due to cache overload when handling large amounts of data, as their processing capabilities are often overwhelmed, leading to insufficient cache resources and inability to write data effectively.
Innovation Solution
A method and apparatus for controlling data flow in storage devices by monitoring cache input and output parameters, adjusting bandwidth values, and using tokens to manage data flow, thereby reducing cache overload and improving performance by regulating incoming traffic and maintaining stable cache watermarks.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If the storage device receives large amounts of data, then the data processing capability is improved, but the cache becomes overloaded and performance deteriorates
Solution Approach 1:
The patent implements a feedback mechanism by monitoring the cache water mark (proportion of cache usage) and dynamically adjusting the bandwidth value based on the monitored state. When the cache water mark exceeds a threshold indicating overload, the system reduces the bandwidth value to limit incoming data flow, allowing the cache to drain and recover. This closed-loop feedback control prevents cache overload while maintaining optimal data processing capability.
Solution Approach 2:
The patent applies dynamics by making the bandwidth value adjustable and adaptive rather than fixed. The bandwidth value is dynamically modified based on real-time cache state (water mark), enabling the system to respond to changing conditions. This dynamic adjustment allows the storage device to optimize between accepting new data and flushing existing cache data, preventing performance deterioration during high-load conditions.
2Quantity of substance
If the cache capacity is increased to handle more data, then the data storage capability is improved, but the device complexity and cost increase
Solution Approach 1:
The patent changes the parameter of bandwidth value to control the effective data flow into the cache. By adjusting this parameter based on cache water mark, the system can dynamically limit the rate of data ingress, effectively managing cache utilization without requiring additional cache capacity. This parameter-based control achieves the goal of handling variable data loads with existing cache resources.
Solution Approach 2:
The patent introduces an intermediary control mechanism (bandwidth value adjustment) between the incoming data flow and the cache. This intermediary layer acts as a regulator, controlling the rate at which data enters the cache based on current cache conditions. This approach avoids the need for larger cache capacity by introducing a control layer that manages data flow timing and rate.
3Speed
If the flushing bandwidth is increased to clear cache faster, then the cache clearance speed is improved, but the data processing capability is reduced
Solution Approach 1:
The patent makes the bandwidth value dynamic, allowing it to be adjusted based on cache conditions. When the cache is overloaded (high water mark), the bandwidth is reduced to limit incoming data, effectively allowing faster relative clearance. When the cache is underutilized (low water mark), the bandwidth is increased to maximize data processing capability. This dynamic adjustment resolves the contradiction by making flushing speed and processing capability complementary rather than opposing.
Solution Approach 2:
The patent implements periodic monitoring and adjustment of the bandwidth value based on cache water mark thresholds. The system continuously monitors cache state and periodically adjusts the bandwidth parameter, creating a rhythmic pattern of data intake and clearance. This periodic control ensures that the cache operates within optimal boundaries, balancing flushing speed and processing capability over time.
Data Source
AI summary
A method for controlling the data flow in the storage device is applied to a host, and includes obtaining a cache input and output parameter, determining whether the cache input and output parameter meets an overload condition, when the cache input and output parameter meets the overload condition, obtaining a first bandwidth value, where the first bandwidth value is less than a current flushing bandwidth value of the cache, determining a quantity of tokens based on the first bandwidth value, and controlling the data flow in the storage device.


