Multi-FTL Over-Provisioning Control for Load-Balanced Flash Storage
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing storage systems with multiple flash translation layers (FTLs) face performance issues due to unbalanced workload distribution and inefficient over-provisioning, leading to frequent garbage collection operations and reduced overall performance.
Innovation Solution
A method for dynamically adjusting the over-provisioning sizes of individual FTLs based on load levels, reallocating spare blocks to balance the workload and optimize performance by detecting write amplification and access operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If fixed over-provisioning sizes are allocated to multiple FTLs, then device complexity is reduced and ease of operation is improved, but workload distribution becomes unbalanced and performance deteriorates
Solution Approach 1:
The patent implements dynamic over-provisioning adjustment where the controller continuously monitors workload characteristics of each FTL and reallocates OP blocks accordingly. The over-provisioning size for each FTL is no longer fixed but adapts to changing workload demands, allowing the system to maintain optimal performance across varying conditions without manual intervention.
Solution Approach 2:
The controller employs feedback mechanisms by monitoring workload characteristics (such as write amplification, garbage collection frequency, and access patterns) of each FTL and using this information to adjust over-provisioning allocations. This closed-loop control ensures that FTLs with higher workload receive more OP blocks while those with lower workload release blocks, maintaining balanced performance.
2Productivity
If uniform over-provisioning is provided to all FTLs, then ease of operation is improved, but garbage collection frequency increases and performance decreases
Solution Approach 1:
The patent applies local quality by allocating different over-provisioning sizes to different FTLs based on their individual workload characteristics. Instead of uniform allocation, each FTL receives a customized OP size tailored to its specific needs, allowing FTLs with higher garbage collection demands to have larger OP portions while FTLs with lower demands have smaller portions.
Solution Approach 2:
The system dynamically changes the over-provisioning parameter (OP size) for each FTL based on monitored workload characteristics. The controller adjusts the number of OP blocks allocated to each FTL as a variable parameter rather than a fixed value, optimizing garbage collection efficiency by ensuring each FTL has sufficient OP blocks to handle its specific workload patterns.
3Productivity
If over-provisioning blocks are not reallocated, then device complexity is reduced, but workload distribution becomes unbalanced and write amplification increases
Solution Approach 1:
The system implements self-service automation where the controller autonomously monitors workload characteristics and performs over-provisioning reallocation without external intervention. The controller automatically identifies FTLs that need more OP blocks and those that can release blocks, executing the reallocation process independently to maintain balanced workload distribution across all FTLs.
Data Source
AI summary
A method for operating a storage system, a storage device and a non-transitory storage medium thereof are provided. The method comprises following steps. By a controller of the storage system, information associated with respective load levels of a plurality of flash transition layers (FTLs) of the storage system is detected. By the controller, sizes of over-provisioning (OP) portions associated with the plurality of FTLs of the storage system individually are adjusted dynamically based on the detected information associated with the respective load levels of the plurality of FTLs.


