Adaptive Cache Management via Dynamic Jump Size Adjustment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cache management algorithms are inefficient and resource-intensive, requiring additional statistics and data structures, and struggle to adapt quickly to changes in request distribution, leading to suboptimal performance and increased page load times due to high cache miss ratios.

Innovation Solution

The AdaptiveCLIMB algorithm dynamically adjusts the jump size based on cache hits and misses, combining the advantages of LRU and CLIMB algorithms to promote frequently requested items to the top of the cache while minimizing noise and statistical data requirements, allowing for efficient cache size adjustment based on request streams.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If LRU algorithm is used, then fast adaptation to changes in request distribution is achieved, but steady-state hit ratio is lower compared to CLIMB

Engineering Contradiction:
Improveadaptation speedVSAvoidsteady-state hit ratio
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent applies dynamics by making the cache replacement policy adaptive rather than static. The system dynamically switches between LRU and CLIMB behaviors based on detected distribution stability, allowing it to exploit LRU's fast adaptation during changes while leveraging CLIMB's superior steady-state performance during stable periods.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the parameter of replacement behavior by introducing a stability detection mechanism that modifies the replacement policy based on detected distribution characteristics. When stability is detected, the system transitions to CLIMB-like behavior; when instability is detected, it switches to LRU-like behavior.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If CLIMB algorithm is used, then higher steady-state hit ratio is achieved, but stabilization time is increased

Engineering Contradiction:
Improvesteady-state hit ratioVSAvoidstabilization time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by detecting distribution stability in advance and proactively switching to the appropriate algorithm before performance degradation occurs. This allows the system to prevent prolonged periods of suboptimal performance during transitions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system dynamically adjusts the replacement policy based on real-time detection of distribution stability, transitioning from LRU to CLIMB behavior as stability is established, thereby reducing overall stabilization time while maintaining high steady-state hit ratio.

Inventive Principle:
Principle #15Dynamics

3Reliability

If cache size is expanded, then cache miss ratio is reduced, but memory resources are increased

Engineering Contradiction:
Improvecache miss ratioVSAvoidmemory resources
Core Design Contradiction:
ReliabilityVSQuantity of substance

Solution Approach 1:

The patent changes the parameter of replacement behavior to optimize cache utilization. By adapting the replacement policy to match the current distribution characteristics, the system achieves better hit ratios with the same cache size, effectively reducing the need for cache expansion.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11106601B2Method and system for performing adaptive cache management
Publication Date: 2021.08.31 BG NEGEV TECHNOLOGIES & APPLICATIONS LTD
  • US11106601B2 patent drawing
  • US11106601B2 patent drawing
  • US11106601B2 patent drawing

AI summary

A method for efficiently method for performing adaptive management of a cache with predetermined size and number of cells with different locations with respect to the top or bottom of the cache, for storing at different cells, data items to be retrieved upon request from a processor. A stream of requests for items, each of which has a temporal probability to be requested is received and the jump size is incremented on cache misses and decremented on cache hits by automatically choosing a smaller jump size and using a larger jump size when the probability of items to be requested is changed. The jump size represents the number of cells by which a current request is promoted in the cache, on its way from the bottom, in case of a cache hit, or from the outside in case of a cache miss, towards the top cell of the cache.