Spatial Distribution Caching Policy for Storage Systems
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Caching systems for storage devices often inefficiently utilize cache memory by caching blocks based solely on cache miss occurrences, leading to storage of data that may not be reused by the host, thereby reducing the availability of cache memory for frequently accessed data.
Innovation Solution
The implementation of a caching policy that selectively prefetches data from different areas of the storage system based on the spatial distribution of access patterns, using a spatial locality metric to determine the optimal amount of data to cache and the areas from which to prefetch, thereby optimizing cache usage and improving data retrieval efficiency.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Quantity of substance
If data is cached based solely on cache miss occurrences, then the cache memory stores data that may not be reused by the host, but the availability of cache memory for frequently accessed data is reduced
Solution Approach 1:
The patent changes the caching parameter from simple cache miss occurrence to spatial distribution metric. The controller calculates a spatial distribution metric based on multiple distinct groups of accesses, comparing first and second numbers representing different access patterns. This parameter change enables selective prefetching that adapts to actual host access behavior, improving cache hit rate while optimizing cache memory utilization.
2Quantity of substance
If the cache memory size is limited, then the amount of data that can be cached is limited, but selectively deleting data requires complex eviction policies
Solution Approach 1:
The patent simplifies the caching policy by changing from complex eviction-based management to metric-driven selective prefetching. The controller uses spatial distribution metrics to determine which data to cache, eliminating the need for complex eviction policies. The approach compares access patterns (first and second numbers) to automatically determine prefetching behavior, reducing policy complexity while adapting to varying cache memory conditions.
3Productivity
If data is prefetch ed without considering spatial distribution, then cache memory is wasted on data that will not be accessed, but analyzing spatial distribution increases processing complexity
Solution Approach 1:
The patent transforms the prefetching decision process by changing from no spatial analysis to metric-based analysis. The controller calculates spatial distribution metrics by comparing first and second numbers from multiple access groups, providing a quantitative basis for prefetching decisions. This parameter change improves data retrieval efficiency by prefetching only relevant data while keeping the analysis complexity manageable through structured metric calculation.
4Reliability
If the cache controller caches more data to improve hit rates, then cache memory is filled with potentially unused data, but reducing cached data decreases hit rates
Solution Approach 1:
The patent optimizes cache memory utilization by changing the caching parameter from uniform data selection to spatial distribution-based selection. The controller uses the spatial distribution metric to determine which data to cache, ensuring that cache memory is filled with data likely to be reused by the host. This approach improves both cache hit rate and memory utilization efficiency by adapting to actual access patterns rather than caching data uniformly.
Data Source
Figure 1A~1B
Figure 1C~1D
Figure 1E~1F
AI summary
Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for quantifying a spatial distribution of accesses to storage systems and for determining spatial locality of references to storage addresses in the storage systems, are described. In one aspect, a method includes determining a measure of spatial distribution of accesses to a data storage system based on multiple distinct groups of accesses to the data storage system, and adjusting a caching policy used for the data storage system based on the determined measure of spatial distribution.