Checkpointed Tag Prefetcher for Phase-Change Cache Miss Reduction

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing cache memory systems face challenges in maximizing utilization due to limited capacity and high latency, with conventional prefetching mechanisms being ineffective in predicting future memory access patterns, especially in applications with phase behavior that changes over time.

Innovation Solution

A dual-mode prefetching method using checkpoint tags, where cache blocks are saved and restored based on virtual addresses, allowing the cache to revert to a previous state during events that displace the working set, reducing cache misses by preloading data from checkpoint tags.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If conventional prefetching mechanisms are used, then cache capacity is utilized for storing data, but they are ineffective in predicting future memory access patterns especially in applications with phase behavior

Engineering Contradiction:
Improveadaptability to phase behavior changesVSAvoidprediction accuracy
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The patent implements a dual-mode prefetching mechanism that dynamically switches between normal mode and checkpoint mode based on detected phase behavior changes. The system monitors cache access patterns and automatically transitions modes to adapt to changing application phases, making the prefetcher dynamic rather than static. This resolves the contradiction by enabling the system to adapt its prediction strategy to match the current phase behavior.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent creates a checkpoint copy of the tag array that preserves historical cache state information. This checkpoint copy serves as a reference for restoring previous cache states when phase changes are detected. By maintaining this copied version of the tag array, the system can reliably revert to known good states, improving prediction accuracy during phase transitions without losing the ability to adapt to new phases.

Inventive Principle:
Principle #26Copying

2Reliability

If cache capacity is increased to store more data, then cache hit rates improve, but cache cost increases and capacity relative to main memory decreases

Engineering Contradiction:
Improvecache hit rateVSAvoidcache capacity management
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent preloads data into the cache during normal operation by monitoring access patterns and fetching data before it is actually needed. This preliminary action ensures that data is already in the cache when required, improving cache hit rates without requiring a larger cache capacity. The system performs prefetching operations in advance to populate the cache with likely-needed data.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent discards current cache contents when a phase change is detected and recovers previous cache state by restoring from the checkpoint tag array. Instead of trying to retain all possible data in a larger cache, the system selectively discards data that is no longer relevant to the current phase and recovers data that is likely to be needed based on historical patterns. This approach maintains high cache hit rates with limited cache capacity.

Inventive Principle:
Principle #34Discarding and recovering

3Productivity

If checkpoint tags are used for dual-mode prefetching, then cache misses are reduced by preloading data from checkpoint tags, but device complexity increases due to additional checkpoint tag arrays and mode switching logic

Engineering Contradiction:
ImproveperformanceVSAvoidprefetch mechanism structure
Core Design Contradiction:
ProductivityVSDevice complexity

Solution Approach 1:

The patent segments the tag array functionality into two distinct parts: the normal tag array for current cache state and the checkpoint tag array for historical state preservation. This segmentation allows each component to have a specialized function, with the checkpoint tag array dedicated solely to phase change recovery. By dividing the tag management into separate segments, the system achieves sophisticated prefetching capability while keeping each individual component relatively simple and manageable.

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS8683127B2Checkpointed tag prefetcher
Publication Date: 2014.03.25 INTERNATIONAL BUSINESS MACHINE CORPORATION
  • US8683127B2 patent drawing
  • US8683127B2 patent drawing
  • US8683127B2 patent drawing

AI summary

A cache management method using checkpoint tags in checkpoint mode includes steps of: receiving a request to save data; fetching at least one cache block including the data from cache memory; writing the data from the at least one cache block into the data array; writing a physical address and metadata of the cache block into an array of cache memory tags; and upon receipt of a restore request: fetching an identifier for the at least one cache block stored in the checkpoint tag array; reloading the cache memory with the at least one cache block in the checkpoint tag array; and switching to normal mode.