Table of Contents
Fetching ...

SPPAM: Signature Pattern Prediction and Access-Map Prefetcher

Maccoy Merrell, Lei Wang, Stavros Kalafatis, Paul V. Gratz

TL;DR

The paper tackles memory-system bottlenecks by introducing SPPAM, a prefetcher that fuses Signature Pattern Prediction (SPP) ideas with AMPM-style access maps and online-learning to build region-based patterns. It uses region scraping to populate pattern tables and employs a confidence-throttled lookahead to prefetch within the L2C, while integrating with Berti in L1D and Bingo in LLC. Key contributions include region-table-driven pattern scraping, direct-mapped pattern tables with lookahead, global and region-aware usefulness metrics, and cross-layer integration with existing prefetchers. Empirical results on ChampSim traces show notable single-core gains and insights into multi-core behavior, underscoring the approach’s potential and the need for further tuning to mitigate cross-core interactions and bandwidth contention. This work advances robust, region-aware prefetching capable of deeper lookahead while remaining compatible with established L1D/LLC prefetchers.

Abstract

The discrepancy between processor speed and memory system performance continues to limit the performance of many workloads. To address the issue, one effective and well studied technique is cache prefetching. Many prefetching designs have been proposed, with varying approaches and effectiveness. For example, SPP is a popular prefetcher that leverages confidence throttled recursion to speculate on the future path of program's references, however it is very susceptible to the reference reordering of higher-level caches and the OoO core. Orthogonally, AMPM is another popular approach to prefetching which uses reordering-resistant access maps to identify patterns within a region, but is unable to speculate beyond that region. In this paper, we propose SPPAM, a new approach to prefetching, inspired by prior works such as SPP and AMPM, while addressing their limitations. SPPAM utilizes online-learning to build a set of access-map patterns. These patterns are used in a speculative lookahead which is throttled by a confidence metric. Targeting the second-level cache, SPPAM alongside state-of-the-art prefetchers Berti and Bingo improve system performance by 31.4% over no prefetching and 6.2% over the baseline of Berti and Pythia.

SPPAM: Signature Pattern Prediction and Access-Map Prefetcher

TL;DR

The paper tackles memory-system bottlenecks by introducing SPPAM, a prefetcher that fuses Signature Pattern Prediction (SPP) ideas with AMPM-style access maps and online-learning to build region-based patterns. It uses region scraping to populate pattern tables and employs a confidence-throttled lookahead to prefetch within the L2C, while integrating with Berti in L1D and Bingo in LLC. Key contributions include region-table-driven pattern scraping, direct-mapped pattern tables with lookahead, global and region-aware usefulness metrics, and cross-layer integration with existing prefetchers. Empirical results on ChampSim traces show notable single-core gains and insights into multi-core behavior, underscoring the approach’s potential and the need for further tuning to mitigate cross-core interactions and bandwidth contention. This work advances robust, region-aware prefetching capable of deeper lookahead while remaining compatible with established L1D/LLC prefetchers.

Abstract

The discrepancy between processor speed and memory system performance continues to limit the performance of many workloads. To address the issue, one effective and well studied technique is cache prefetching. Many prefetching designs have been proposed, with varying approaches and effectiveness. For example, SPP is a popular prefetcher that leverages confidence throttled recursion to speculate on the future path of program's references, however it is very susceptible to the reference reordering of higher-level caches and the OoO core. Orthogonally, AMPM is another popular approach to prefetching which uses reordering-resistant access maps to identify patterns within a region, but is unable to speculate beyond that region. In this paper, we propose SPPAM, a new approach to prefetching, inspired by prior works such as SPP and AMPM, while addressing their limitations. SPPAM utilizes online-learning to build a set of access-map patterns. These patterns are used in a speculative lookahead which is throttled by a confidence metric. Targeting the second-level cache, SPPAM alongside state-of-the-art prefetchers Berti and Bingo improve system performance by 31.4% over no prefetching and 6.2% over the baseline of Berti and Pythia.
Paper Structure (12 sections, 6 figures, 3 tables)

This paper contains 12 sections, 6 figures, 3 tables.

Figures (6)

  • Figure 1: SPPAM Architecture
  • Figure 2: Region Table Architecture
  • Figure 3: Pattern Table Architecture
  • Figure 4: SPPAM Lookahead
  • Figure 5: Single core speedup over Berti + Pythia across DPC4 traces
  • ...and 1 more figures