Cache Eviction Scoring Using Idle Time and Data Weights
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing cache management systems, such as LRU and LFU, are inefficient in determining which data records to evict from a cache memory, as they rely on idle times or access frequencies alone, leading to suboptimal cache performance.
Innovation Solution
A cache management system that calculates a score for each data record based on a ratio of idle time to weight or access frequency, allowing for more informed eviction decisions by selecting records with the lowest score when the cache is full.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If LRU or LFU approaches are used to manage cache memory, then cache management is simplified, but cache performance becomes suboptimal
Solution Approach 1:
The patent changes the parameters used for cache eviction from simple idle time (LRU) or access frequency (LFU) to a weighted score that incorporates multiple factors including idle time, access frequency, and custom weights assigned to different data records. This allows the system to maintain ease of operation while significantly improving cache performance by making more informed eviction decisions.
2Speed
If data records are evicted based on idle time or access frequency alone, then eviction decisions are faster, but important data records may be incorrectly removed
Solution Approach 1:
The patent introduces a scoring mechanism as an intermediary that translates multiple factors (idle time, access frequency, weights) into a single comparable metric. This intermediary score allows the system to make both fast and accurate eviction decisions by ranking data records based on their scores rather than relying on single-factor heuristics.
Solution Approach 2:
The patent changes from using single parameters (idle time or access frequency) to a composite scoring system that combines multiple parameters with customizable weights. This enables the system to maintain speed while improving reliability by considering multiple dimensions of data importance simultaneously.
Data Source
AI summary
A processor or other cache manager may be configured to perform eviction of data from a cache memory. The processor detects a request to store a first data record into the cache memory. The request includes the first data record and a first weight, which may be specified by an application. The processor writes the first data record and its first weight into the cache memory. The processor calculates a first score of the first data record, which may be based on a first ratio of a first idle time of the first data record to the first weight. The processor compares the first score to a second score of a second data record stored in the cache memory. The processor then deletes the first data record from the cache memory, based on the comparing of the first score to the second score.


