Temporal Prefetcher for Irregular Memory Access Patterns

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing prefetching techniques are ineffective for workloads with irregular but repeated patterns of memory accesses, such as linked lists, as they rely on observing spatial patterns or constant offsets, leading to poor performance in predicting and prefetching data.

Innovation Solution

A temporal prefetcher that monitors access requests directly from processing circuitry, maintaining correlation information to record observed sequences of memory accesses and prefetching correlated data items based on this information, even during cache hits, to improve data availability and reduce latency.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Measurement precision

If existing prefetching techniques are used, then spatial patterns and constant offsets can be detected, but irregular but repeated patterns of memory accesses cannot be predicted

Engineering Contradiction:
Improvepattern detection accuracyVSAvoidworkload applicability
Core Design Contradiction:
Measurement precisionVSAdaptability or versatility

Solution Approach 1:

The patent implements a dynamic temporal prefetcher that adapts to different workload patterns by learning from historical access sequences. Unlike static spatial prefetchers, this system dynamically adjusts to irregular but repeated patterns by maintaining correlation information about access sequences, enabling it to handle diverse workloads including linked lists and other non-spatial patterns effectively

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The patent changes the fundamental parameter being monitored from spatial relationships (addresses, offsets) to temporal relationships (access sequences, correlation information). By tracking when data items are accessed rather than where they are located in space, the system can predict irregular but repeated access patterns that spatial methods cannot detect

Inventive Principle:
Principle #35Parameter changes

2Loss of energy

If prefetching is performed only on cache misses, then bandwidth is conserved, but latency is increased for repeated access patterns

Engineering Contradiction:
Improvememory bandwidth usageVSAvoidaccess latency
Core Design Contradiction:
Loss of energyVSLoss of time

Solution Approach 1:

The patent performs preliminary prefetching actions based on temporal correlation information before cache misses occur. By detecting repeated access patterns and predicting future accesses, the system prefetches data in advance during cache hits, eliminating the need to wait for cache misses to trigger prefetching, thus reducing latency without excessive bandwidth consumption

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a feedback mechanism where the prefetcher monitors actual access patterns and uses this information to refine its predictions. By continuously learning from observed access sequences and comparing predictions with actual behavior, the system optimizes prefetching decisions to balance bandwidth usage and latency reduction

Inventive Principle:
Principle #23Feedback

3Reliability

If correlation information storage is implemented, then temporal patterns can be tracked, but device complexity increases

Engineering Contradiction:
Improveprediction accuracyVSAvoidprefetcher structure
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent segments the prefetching function into distinct components: correlation information storage, pattern detection logic, and prefetch execution. This modular segmentation allows each component to be optimized independently and simplifies the overall design by separating the complex task of temporal pattern recognition into manageable, specialized units

Inventive Principle:
Principle #1Segmentation

Data Source

PatentUS11663132B2Prefetching
Publication Date: 2023.05.30 ARM LTD
  • US11663132B2 patent drawing
  • US11663132B2 patent drawing
  • US11663132B2 patent drawing

AI summary

A technique is provided for prefetching data items. An apparatus has a storage structure with a plurality of entries to store data items. The storage structure is responsive to access requests from processing circuitry to provide access to the data items. The apparatus has prefetch circuitry to prefetch data and correlation information storage to store correlation information for a plurality of data items. The correlation information identifies, for each of the plurality of data items, one or more correlated data items. The prefetch circuitry is configured to monitor the access requests from the processing circuitry. In response to detecting a hit in the correlation information storage for a particular access request that identifies a requested data item for which the correlation information storage stores correlation information, the prefetch circuitry is configured to prefetch the one or more correlated data items identified by the correlation information for the requested data item.