Disk Cache Allocation Using Segregated Units
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
In disk cache systems using shingled magnetic recording (SMR), the circular reuse method limits the flexibility and efficiency of data allocation and cleaning, leading to reduced cache utilization due to constraints on write forward corruption and stale data management, which can result in unused and stale units being unavailable for new data storage.
Innovation Solution
The disk cache is segregated into isolated allocation units with specific isolation spaces to enable out-of-order reuse, allowing for flexible allocation and cleaning policies based on workload, reducing write forward corruption, and optimizing cache efficiency by reusing stale data first.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Device complexity
If circular reuse method is used in disk cache, then data allocation is simplified, but cache utilization is reduced due to constraints on write forward corruption and stale data management
Solution Approach 1:
The disk cache is divided into multiple independent allocation units, each with isolation spaces separating them. This segmentation allows different units to be managed independently, enabling out-of-order allocation and cleaning operations while maintaining data integrity through the isolation spaces that prevent write forward corruption between units.
Solution Approach 2:
The patent implements dynamic allocation policies that allow the cache to adaptively select which allocation units to use based on current workload conditions. The system can dynamically switch between in-order and out-of-order allocation strategies, and can dynamically identify and clean stale data units, optimizing cache utilization under varying workload conditions.
2Adaptability or versatility
If out-of-order allocation is implemented, then cache flexibility and utilization are improved, but write forward corruption risks increase
Solution Approach 1:
Isolation spaces are introduced as intermediary regions between adjacent allocation units in the disk cache. These isolation spaces act as buffers that prevent write operations in one allocation unit from corrupting data in adjacent units, thereby enabling safe out-of-order allocation while maintaining data integrity across the cache structure.
3Quantity of substance
If stale data is not cleaned efficiently, then cache capacity is wasted, but cleaning operations increase access time and reduce throughput
Solution Approach 1:
The system performs preliminary identification of stale data units by tracking allocation status and data validity markers. Before cleaning operations are executed, the system has already identified which allocation units contain stale data, allowing for targeted and efficient cleaning operations that minimize access time while maximizing cache capacity utilization.
Solution Approach 2:
The patent implements efficient discarding of stale data from identified allocation units and recovering those units for new data storage. The system systematically discards stale data markers and recovers the underlying cache capacity, maintaining a balance between cache utilization and cleaning overhead through optimized discard operations.
Data Source
AI summary
Implementations disclosed herein provide a method comprising determining a workload on a disk cache with a storage device controller, determining a state of a free pool of the disk cache, receiving a data write request to the disk cache, segregating the free pool of the disk cache into a plurality of allocation units, allocating the plurality of allocation units out of order, as compared to a physical arrangement order of the allocation units in the disk cache, based on the workload, and storing data in the plurality of allocation units.


