Coarse Granularity Cache Eviction Scoring

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Conventional cache eviction policies based solely on recency are ineffective for coarse-granularity cache management, 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 relevant segments from evicted cache units to maintain data relevance and optimize cache performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Ease of operation

If conventional LRU eviction policy is used for coarse-granularity cache management, then cache unit eviction is simplified, but relevant data within cache units is incorrectly removed and cache hit rate decreases

Engineering Contradiction:
Improvecache eviction simplicityVSAvoiddata relevance preservation
Core Design Contradiction:
Ease of operationVSReliability

Solution Approach 1:

The patent segments the cache unit into individual segments and tracks their access histories separately. Instead of treating the entire cache unit as a single entity for eviction decisions, each segment is independently evaluated based on its access patterns, allowing relevant segments to be retained while evicting only truly cold segments.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent applies different eviction criteria to different segments within a cache unit based on their individual access histories and characteristics. Each segment is evaluated locally for its relevance and access patterns, rather than applying a uniform LRU policy across the entire cache unit, thereby preserving locally relevant data.

Inventive Principle:
Principle #3Local quality

2Device complexity

If cache units are evicted based on recency alone, then eviction decision-making is simplified, but the ability to accurately assess data relevance is compromised

Engineering Contradiction:
Improveeviction decision complexityVSAvoiddata relevance assessment accuracy
Core Design Contradiction:
Device complexityVSMeasurement precision

Solution Approach 1:

The patent performs preliminary tracking and scoring of each segment's access history before eviction decisions are made. Access counts, recency, and other metrics are accumulated in advance, allowing for precise relevance assessment at the time of eviction without adding complexity to the eviction decision-making process itself.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback mechanisms by continuously monitoring segment access patterns and using this information to update segment scores and eviction priorities. The system learns from actual access behavior to improve its relevance assessment accuracy over time, allowing for more precise eviction decisions.

Inventive Principle:
Principle #23Feedback

3Productivity

If all segments in a cache unit are evicted together, then eviction operation is simplified, but data loss increases when only some segments are cold

Engineering Contradiction:
Improveeviction operation efficiencyVSAvoidrelevant data loss
Core Design Contradiction:
ProductivityVSLoss of substance

Solution Approach 1:

The patent divides the cache unit into separable segments that can be independently managed and evicted. This segmentation allows the system to identify and evict only the cold segments while retaining hot segments, preventing unnecessary data loss while maintaining operational efficiency through automated segment-level management.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The patent selectively discards only the cold segments that are truly ready for eviction while recovering and retaining segments that are still relevant. This selective approach prevents the complete loss of data from cache units, allowing relevant segments to be preserved for future access.

Inventive Principle:
Principle #34Discarding and recovering

Data Source

PatentUS9892044B1Methods to efficiently implement coarse granularity cache eviction
Publication Date: 2018.02.13 EMC IP HLDG CO LLC
  • US9892044B1 patent drawing
  • US9892044B1 patent drawing
  • US9892044B1 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 at a sub-cache unit granularity, wherein the cache device comprises a plurality of cache units, each cache unit having a plurality of segments, wherein the cache device is accessible by a cache client at a segment granularity. The exemplary method further includes in response to determining that a cache eviction is to be performed, selecting a predetermined number of cache units from the plurality of cache units, determining a score for each of the selected cache units based on the respective metadata set maintained at the sub-cache unit granularity, and evicting one or more of the selected predetermined number of cache units based on their scores. The metadata may include, for example, last access time (LAT) metadata, an access count, and hotness metadata, and metadata may be maintained at a segment or a segment group granularity.