Bloom Filter Cache Hit Predictor

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Traditional cache hit or miss determination in computing systems is reactive and inefficient, leading to significant latency in modern high-speed computing environments, and existing cache hit prediction solutions lack accuracy and are resource-intensive.

Innovation Solution

A modified Bloom filter-based hit prediction mechanism that is updateable, allowing it to stay synchronized with the cache memory, thereby maintaining high prediction accuracy and reducing latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Loss of time

If traditional reactive cache hit or miss determination is used, then the system structure is simple, but the latency is significant and efficiency is low

Engineering Contradiction:
Improvecache determination latencyVSAvoidcache prediction mechanism complexity
Core Design Contradiction:
Loss of timeVSDevice complexity

Solution Approach 1:

The patent applies preliminary action by performing cache hit prediction before the actual cache access occurs. A separate prediction cache stores predicted hit/miss outcomes in advance, allowing the system to prepare for potential cache misses by pre-fetching data from main memory while the prediction is being evaluated, thereby reducing overall access latency without significantly increasing structural complexity

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent introduces an intermediary prediction cache structure that mediates between the main cache and main memory. This prediction cache acts as a buffer that stores pre-computed prediction results, allowing the system to avoid direct costly accesses to main memory when predictions indicate misses, thus reducing latency while maintaining a relatively simple overall architecture

Inventive Principle:
Principle #24Intermediary (Mediator)

2Measurement precision

If existing cache hit prediction solutions are implemented, then some latency reduction is achieved, but prediction accuracy is insufficient and resource consumption is high

Engineering Contradiction:
Improvecache hit prediction accuracyVSAvoidcomputational resources required
Core Design Contradiction:
Measurement precisionVSQuantity of substance

Solution Approach 1:

The patent applies copying by creating a simplified prediction cache that replicates only the essential prediction information needed for hit/miss determination. Instead of using complex prediction algorithms, the system copies and stores prediction outcomes in a separate cache structure, achieving high prediction accuracy with minimal computational resources during actual cache operations

Inventive Principle:
Principle #26Copying

Solution Approach 2:

The patent applies partial action by implementing prediction only for specific cache access patterns or scenarios where it provides the most benefit. The prediction mechanism processes only the necessary subset of cache operations, achieving high accuracy for critical predictions while consuming minimal computational resources by avoiding unnecessary prediction overhead for other operations

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS20250045206A1Bloom-based hit predictor
Publication Date: 2025.02.06 ADVANCED MICRO DEVICES INC
  • US20250045206A1 patent drawing
  • US20250045206A1 patent drawing
  • US20250045206A1 patent drawing

AI summary

An implementation is a method for operating a cache memory in a computing system, receiving a request for a first data item from the cache memory of the computing system, the first data item having an associated tag value. The method also includes performing a lookup in a bloom filter for the tag value associated with the first data item. The method also includes performing a lookup in the cache memory for the requested first data item based on the lookup in the bloom filter. The method also includes updating the bloom filter based on results of the lookup in the cache memory for the requested first data item.