Storage Performance Consistency via Feedback Control
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Memory sub-systems, such as SSDs, face challenges in maintaining consistent throughput for I/O operations due to varying technology and architecture limitations, leading to uneven data distribution and the need for garbage collection, which affects performance consistency.
Innovation Solution
A performance manager component within the memory controller adjusts the ratio of host data to reclaimed data writes through a feedback control mechanism, prioritizing host data writes when throughput is below target and reducing them when it exceeds the target, in conjunction with the garbage collection process, to maintain consistent throughput.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Reliability
If garbage collection process is implemented to manage data reorganization, then data can be reclaimed and rewritten, but throughput becomes inconsistent due to varying ratios of host data to reclaimed data writes
Solution Approach 1:
The performance manager continuously monitors the actual throughput and compares it to the target throughput. Based on this feedback, it dynamically adjusts the ratio of host data writes to reclaimed data writes in garbage collection operations. When actual throughput falls below target, the manager increases host data write ratio; when actual throughput exceeds target, it decreases host data write ratio, thereby maintaining consistent throughput performance
Solution Approach 2:
The system transitions from a static garbage collection process to a dynamic one where the ratio of host data to reclaimed data writes is continuously adjusted based on real-time throughput conditions. This dynamic adaptation allows the system to maintain optimal performance by responding to changing workload patterns and storage conditions
2Reliability
If host data write priority is increased to maintain throughput, then throughput consistency improves, but reclaimed data writes are delayed affecting garbage collection efficiency
Solution Approach 1:
The performance manager uses feedback from throughput monitoring to dynamically adjust the priority ratio between host data and reclaimed data writes. This ensures that reclaimed data is written promptly when needed while maintaining overall throughput consistency, preventing excessive delays in garbage collection operations
Solution Approach 2:
The system changes the parameter of write priority ratio dynamically based on throughput conditions. By adjusting the ratio of host data writes to reclaimed data writes, the system can maintain throughput consistency while ensuring that reclaimed data is not unduly delayed, balancing both requirements through parameter optimization
3Productivity
If reclaimed data is written immediately with host data, then space is efficiently utilized, but throughput varies due to different write operation sizes and frequencies
Solution Approach 1:
The performance manager monitors actual throughput and uses this feedback to adjust the mixing ratio of host data and reclaimed data writes. This ensures that space is efficiently utilized through combined writes while maintaining throughput consistency by adapting to varying write operation characteristics in real-time
Solution Approach 2:
The system dynamically changes the parameter of data write composition ratio based on throughput conditions and workload characteristics. By optimizing the ratio of host data to reclaimed data writes, the system achieves both efficient space utilization and consistent throughput performance under varying operational conditions
Data Source
AI summary
A method for managing storage performance consistency, where the method determines a target throughput for writes to a memory sub-system, increases a tracking variable with a granularity based on the target throughput at fixed intervals, decreases the tracking variable based on writes of host data received from a host system to the memory sub-system, and adjusts a priority of host data writes to the memory sub-system relative to writes of reclaimed data from the memory sub-system in response to the tracking variable indicating a deviation from the target throughput.


