Dynamic Cache Insertion Ratio Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current software cache designs, such as exact match caches (EMC) used in OpenFlow switches, suffer from high cache misses due to inefficient memory usage and overhead, especially when packet traffic patterns are non-repeating or have low locality, leading to reduced system throughput and increased costs.

Innovation Solution

Implementing a dynamic cache insertion rate algorithm that adjusts based on historical cache miss ratios and other factors like latency and throughput, using a feedback loop to optimize the cache insertion ratio in real-time, allowing for adaptive caching to match changing traffic patterns.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Speed

If a software cache is used to improve performance, then fetch speed is improved, but cache misses increase when traffic patterns are non-repeating

Engineering Contradiction:
Improvefetch speedVSAvoidcache hit ratio
Core Design Contradiction:
SpeedVSReliability

Solution Approach 1:

The patent implements dynamic cache insertion ratio adjustment based on detected traffic patterns. When repeating traffic patterns are detected, the insertion ratio is increased to maximize caching benefits. When non-repeating patterns are detected, the insertion ratio is decreased to avoid unnecessary cache misses. This dynamic adaptation resolves the contradiction by making cache behavior flexible rather than static.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system changes the cache insertion ratio parameter based on traffic pattern analysis. By monitoring whether traffic is repeating or non-repeating and adjusting the insertion ratio accordingly, the system optimizes the balance between cache hit ratio and fetch speed, resolving the contradiction between these two parameters.

Inventive Principle:
Principle #35Parameter changes

2Reliability

If cache insertion ratio is increased to reduce cache misses, then cache hit ratio is improved, but system overhead increases

Engineering Contradiction:
Improvecache hit ratioVSAvoidsystem overhead
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system dynamically adjusts the cache insertion ratio parameter based on traffic pattern detection. By increasing insertion ratio only when repeating patterns are detected (where caching is beneficial) and decreasing it when non-repeating patterns are detected (where caching overhead outweighs benefits), the system optimizes the trade-off between cache hit ratio and system overhead.

Inventive Principle:
Principle #35Parameter changes

Solution Approach 2:

The system implements a feedback mechanism that monitors traffic patterns and adjusts cache insertion ratio accordingly. This closed-loop control ensures that cache operations are optimized based on actual workload characteristics, reducing unnecessary overhead while maintaining high cache hit ratios when beneficial.

Inventive Principle:
Principle #23Feedback

3Productivity

If cache size is increased to handle more requests, then throughput is improved, but memory usage increases

Engineering Contradiction:
ImprovethroughputVSAvoidmemory usage
Core Design Contradiction:
ProductivityVSQuantity of substance

Solution Approach 1:

The patent implements dynamic adjustment of cache insertion ratio based on traffic pattern detection and performance monitoring. This allows the system to adaptively control memory allocation to cache operations, increasing throughput when beneficial while reducing memory usage when cache operations are not effective, thus resolving the contradiction between throughput and memory usage.

Inventive Principle:
Principle #15Dynamics

Data Source

PatentUS11392298B2Techniques to control an insertion ratio for a cache
Publication Date: 2022.07.19 INTEL CORP
  • US11392298B2 patent drawing
  • US11392298B2 patent drawing
  • US11392298B2 patent drawing

AI summary

Examples may include techniques to control an insertion ratio or rate for a cache. Examples include comparing cache miss ratios for different time intervals or windows for a cache to determine whether to adjust a cache insertion ratio that is based on a ratio of cache misses to cache insertions.