Cache Eviction Scoring via Deferred Segment Calculations

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional cache eviction policies based solely on recency are ineffective for coarse-granularity cache systems, leading to the removal of relevant data and decreased cache hit rates, as they fail to accurately assess the relevance of data within cache units.

Innovation Solution

Implement a cache management system that scores cache units based on multiple criteria such as segment validity, age, priority, and access count, and copies forward hot segments from evicted cache units to maintain relevant data in the cache.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If conventional LRU eviction policy is used based on recency alone, then the eviction decision is simple and fast, but relevant data is incorrectly removed and cache hit rate decreases

Engineering Contradiction:
Improveeviction decision simplicityVSAvoidcache hit rate
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The cache unit is segmented into multiple segments, and the eviction decision is made at the segment level rather than treating the entire cache unit as a single entity. This allows selective eviction of only the least relevant segments while preserving other relevant data, thereby maintaining cache hit rate while simplifying the overall management process

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

Different segments within a cache unit are assigned different eviction priorities based on their individual relevance characteristics. Instead of uniform treatment, each segment receives customized eviction handling according to its access patterns and importance, preventing removal of relevant data while maintaining operational simplicity

Inventive Principle:
Principle #3Local quality

2Device complexity

If coarse-granularity cache units are used, then the cache management is simplified and SSD endurance is protected, but the precision of eviction assessment is reduced leading to irrelevant data removal

Engineering Contradiction:
Improvecache management complexityVSAvoideviction assessment precision
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

Each coarse-granularity cache unit is divided into multiple fine-grained segments for evaluation purposes. This segmentation enables precise assessment of individual segment relevance while maintaining the simplicity of managing the overall cache unit structure, thus preserving both low complexity and high measurement precision

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The evaluation dimension is introduced at the segment level within cache units. By adding this new dimension of segmentation, the system achieves precise assessment of data relevance without changing the coarse-granularity structure of cache units themselves, thereby maintaining simplified management while improving measurement precision

Inventive Principle:
Principle #17Another dimension (Dimensionality change)

3Reliability

If multiple criteria scoring is implemented for cache unit evaluation, then eviction accuracy is improved and relevant data is preserved, but computation time and processing overhead increase

Engineering Contradiction:
Improveeviction decision accuracyVSAvoidcomputation time for eviction
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

Segment relevance scores are pre-computed and stored during normal cache operations. This preliminary action allows the eviction decision to be made quickly by simply comparing pre-existing scores rather than performing complex calculations at eviction time, thus improving eviction accuracy while minimizing computation time during the critical eviction moment

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

Instead of evaluating all possible criteria combinations for every segment, the system uses a partial set of effective criteria (access count, recency, priority) that provide sufficient accuracy for eviction decisions. This partial action approach achieves high eviction accuracy without the excessive computation time that would result from exhaustive evaluation of all possible factors

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS9921963B1Method to decrease computation for cache eviction using deferred calculations
Publication Date: 2018.03.20 DELL EMC
  • US9921963B1 patent drawing
  • US9921963B1 patent drawing
  • US9921963B1 patent drawing

AI summary

A data processing system and methods for performing cache eviction are disclosed. An exemplary method includes maintaining a metadata set for each cache unit of a cache device, wherein the cache device comprises a plurality of cache units, each cache unit having a plurality of segments, calculating a score for each metadata set, and arranging the metadata sets in a list in ascending order from lowest score to highest score. The exemplary method further includes in response to determining that a cache eviction is to be performed, selecting a cache unit corresponding to the metadata set in the list having the lowest score, without recalculating a score for any of the metadata set, and evicting the selected cache unit. The metadata nay include, for example, segment count metadata, validity metadata, last access time (LAT) metadata, and hotness metadata.