Cache Memory Randomized Eviction Policy
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing cache memory systems face inefficiencies due to deterministic eviction policies that discard important data based on time, leading to increased memory access latency and reduced performance, as they fail to retain data that is frequently reused.
Innovation Solution
Implementing a cache memory system with randomized eviction policies and multi-occupancy, where data is randomly selected for eviction and reused data can occupy multiple cache lines, allowing for a higher probability of retaining important data over time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Loss of time
If deterministic eviction policies are used, then cache management is simple, but important data is discarded based on time leading to increased memory access latency
Solution Approach 1:
The patent changes the eviction policy from deterministic time-based to probabilistic reuse-based. The cache controller monitors data reuse patterns and assigns retention probabilities dynamically, allowing frequently reused data to be retained longer while less important data is evicted, thereby reducing memory access latency without requiring complex deterministic tracking
Solution Approach 2:
The cache system implements feedback mechanisms where the cache controller continuously monitors data access patterns and reuse counts. This feedback informs the eviction decision-making process, allowing the system to adaptively adjust which data to retain or evict based on actual usage patterns rather than predetermined time rules
2Productivity
If data is evicted based on time, then cache structure is simple, but frequently reused data is lost reducing cache performance
Solution Approach 1:
The cache system enables data to essentially advocate for its own retention through the reuse count mechanism. When data is accessed, the reuse count is incremented, and this self-updated information is used by the eviction policy to determine retention. This eliminates the need for complex external tracking of data importance while improving cache performance for frequently reused data
Solution Approach 2:
The eviction policy transitions from static time-based rules to dynamic reuse-based probabilities. The retention probability of each cache line is dynamically adjusted based on its reuse count and current cache state, allowing the system to adapt to changing access patterns and prioritize retention of frequently reused data
3Speed
If prefetching is used to increase likelihood of desired data in cache, then memory access speed improves, but operational complexity increases
Solution Approach 1:
The patent extracts the complexity of prefetching by removing it entirely and replacing it with a simpler reuse-based retention mechanism. Instead of attempting to predict future data needs through complex prefetching algorithms, the system simply retains data that has demonstrated actual reuse value, achieving fast access to needed data without the operational complexity of prediction systems
Data Source
AI summary
This document describes apparatuses and techniques for cache memory with randomized eviction. In various aspects, a cache memory randomly selects a cache line for eviction and/or replacement. The cache memory may also support multi-occupancy whereby the cache memory enters data reused from another cache line to replace the data of the randomly evicted cache line. By so doing, the cache memory may operate in a nondeterministic fashion, which may increase a probability of data remaining in the cache memory for subsequent requests.


