Saved in:
Bibliographic Details
Main Author: Maruszewski, Nikola Vuk
Format: Preprint
Published: 2025
Subjects:
Online Access:https://arxiv.org/abs/2505.21669
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866918036820197376
author Maruszewski, Nikola Vuk
author_facet Maruszewski, Nikola Vuk
contents With ever-increasing main memory stall times, we need novel techniques to reduce effective memory access latencies. Prefetching has been shown to be an effective solution, especially with contiguous data structures that follow the traditional principles of spatial and temporal locality. However, on linked data structures$-$made up of many nodes linked together with pointers$-$typical prefetchers struggle, failing to predict accesses as elements are arbitrarily scattered throughout memory and access patters are arbitrarily complex and hence difficult to predict. To remedy these issues, we introduce $\textit{Linkey}$, a novel prefetcher that utilizes hints from the programmer/compiler to cache layout information and accurately prefetch linked data structures. $\textit{Linkey}$ obtains substantial performance improvements over a striding baseline. We achieve a geomean 13% reduction in miss rate with a maximum improvement of 58.8%, and a 65.4% geomean increase in accuracy, with many benchmarks improving from 0%. On benchmarks where $\textit{Linkey}$ is applicable, we observe a geomean IPC improvement of 1.40%, up to 12.1%.
format Preprint
id arxiv_https___arxiv_org_abs_2505_21669
institution arXiv
publishDate 2025
record_format arxiv
spellingShingle Improved Prefetching Techniques for Linked Data Structures
Maruszewski, Nikola Vuk
Hardware Architecture
C.5.3; E.1
With ever-increasing main memory stall times, we need novel techniques to reduce effective memory access latencies. Prefetching has been shown to be an effective solution, especially with contiguous data structures that follow the traditional principles of spatial and temporal locality. However, on linked data structures$-$made up of many nodes linked together with pointers$-$typical prefetchers struggle, failing to predict accesses as elements are arbitrarily scattered throughout memory and access patters are arbitrarily complex and hence difficult to predict. To remedy these issues, we introduce $\textit{Linkey}$, a novel prefetcher that utilizes hints from the programmer/compiler to cache layout information and accurately prefetch linked data structures. $\textit{Linkey}$ obtains substantial performance improvements over a striding baseline. We achieve a geomean 13% reduction in miss rate with a maximum improvement of 58.8%, and a 65.4% geomean increase in accuracy, with many benchmarks improving from 0%. On benchmarks where $\textit{Linkey}$ is applicable, we observe a geomean IPC improvement of 1.40%, up to 12.1%.
title Improved Prefetching Techniques for Linked Data Structures
topic Hardware Architecture
C.5.3; E.1
url https://arxiv.org/abs/2505.21669