Differential Cache Eviction by Storage I/O Speed
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Modern cache algorithms fail to distinguish between data from faster and slower storage devices, leading to inefficient cache allocation, where data from faster devices dominates, reducing the read-hit ratio for slower devices.
Innovation Solution
Implementing an eviction policy that demotes cache entries from faster-responding storage devices faster than those from slower-responding devices, and prioritizing cache entries with higher read-hit ratios, to allocate space more efficiently based on media I/O speed.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If data from faster storage devices is cached without distinction, then cache fill rate increases, but read-hit ratio for slower storage devices deteriorates
Solution Approach 1:
The patent segments the cache into multiple independent cache lines or regions, each dedicated to storing data from a specific storage device. This segmentation prevents faster storage devices from monopolizing cache space, ensuring that slower storage devices maintain adequate cache presence and read-hit ratios while still allowing high fill rates from fast devices.
2Ease of operation
If uniform eviction policy is applied to all cache entries, then eviction simplicity is maintained, but cache allocation efficiency for slower devices deteriorates
Solution Approach 1:
The patent implements local quality by applying different eviction policies to different cache lines based on their associated storage device characteristics. Cache lines corresponding to slower storage devices are evicted less aggressively or with different criteria than those from faster devices, optimizing cache allocation efficiency for each device type while maintaining manageable complexity through device-specific rules.
Data Source
AI summary
A method for allocating space in a cache based on media I/O speed is disclosed herein. In certain embodiments, such a method may include storing, in a read cache, cache entries associated with faster-responding storage devices and cache entries associated with slower-responding storage devices. The method may further include implementing an eviction policy in the read cache. This eviction policy may include demoting, from the read cache, the cache entries of faster-responding storage devices faster than the cache entries of slower-responding storage devices, all other variables being equal. In certain embodiments, the eviction policy may further include demoting, from the read cache, cache entries having a lower read-hit ratio faster than cache entries having a higher read-hit ratio, all other variables being equal. A corresponding computer program product and apparatus are also disclosed and claimed herein.


