Cache Eviction Using Machine Learning Predictions

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing caching systems face challenges in efficiently managing cache eviction, leading to increased cache miss rates due to inaccurate data eviction decisions.

Innovation Solution

The implementation of a machine learning system to predict eviction accuracy, combined with random eviction or other processes, to determine which data to evict from the cache, thereby improving cache performance.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Productivity

If a machine learning system is used to determine data eviction from cache, then cache performance is improved, but the system complexity increases

Engineering Contradiction:
Improvecache performanceVSAvoidsystem complexity
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

A machine learning system acts as an intermediary component between the cache memory and the data processing system. This ML intermediary analyzes access patterns and predicts which cached data is least likely to be accessed soon, providing eviction recommendations that improve cache performance without requiring complex manual management logic in the core system.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

The patent replaces traditional mechanical or rule-based cache eviction mechanisms (such as least recently used algorithms) with a machine learning-based predictive system. This substitution allows the system to make more intelligent eviction decisions based on learned patterns rather than simple mechanical rules, improving cache hit rates while the ML system handles the complexity.

Inventive Principle:
Principle #28Mechanics substitution (Replace mechanical system)

2Productivity

If machine learning predictions are used for cache eviction, then cache miss rate is reduced, but the risk of inaccurate predictions increases

Engineering Contradiction:
Improvecache miss rateVSAvoidprediction accuracy
Core Design Contradiction:
ProductivityVSReliability

Solution Approach 1:

The machine learning system implements a feedback mechanism where actual cache access patterns are continuously monitored and fed back into the ML model. When predictions are made about which data to evict, the system tracks whether those predictions are accurate by monitoring subsequent access patterns. This feedback loop allows the ML system to learn from its mistakes and continuously improve prediction accuracy, reducing cache miss rates over time while maintaining reliability.

Inventive Principle:
Principle #23Feedback

3Quantity of substance

If data is evicted from cache to make room for new data, then cache storage capacity is optimized, but the likelihood of cache misses increases

Engineering Contradiction:
Improvecache storage capacityVSAvoidcache miss rate
Core Design Contradiction:
Quantity of substanceVSProductivity

Solution Approach 1:

The machine learning system performs preliminary analysis of data access patterns before making eviction decisions. By predicting future access patterns in advance, the system can identify which cached data is least likely to be needed soon and evict only that data. This preliminary predictive action ensures that evicted data is not immediately needed, thereby optimizing cache storage capacity for new data while minimizing the likelihood of cache misses.

Inventive Principle:
Principle #10Preliminary action

Data Source

PatentUS20250077441A1Caching using machine learned predictions
Publication Date: 2025.03.06 GOOGLE LLC
  • US20250077441A1 patent drawing
  • US20250077441A1 patent drawing
  • US20250077441A1 patent drawing

AI summary

Methods, systems, and apparatus, including computer programs encoded on computer storage media, for evicting cache data using machine learning. One of the methods includes determining that particular data is not stored in a cache that is full; determining, using information for the particular data, a predicted eviction accuracy of a machine learning system; determining whether the predicted eviction accuracy of the machine learning system satisfies a threshold eviction accuracy; and in response to determining that the predicted eviction accuracy of the machine learning system satisfies the threshold eviction accuracy: sending, to the machine learning system, a request for an identifier for data stored in the cache; receiving, from the machine learning system, an identifier for data stored in the cache; evicting the data referenced by identifier from a location in the cache; and storing the particular data at the location in the cache.