Skip to content
Free planNo credit card requiredStart writing

article · 2025

Multi-Strided Access Patterns to Boost Hardware Prefetching

M. Blom, Kristian F. D. Rietveld, Rob V. van Nieuwpoort

Cited by 1Open access

Abstract

Important memory-bound kernels, such as linear algebra, convolutions, and stencils, rely on SIMD instructions as well as optimizations targeting improved vectorized data traversal and data re-use to attain satisfactory performance. On contemporary CPU architectures, the hardware prefetcher is of key importance for efficient utilization of the memory hierarchy. In this paper, we demonstrate that transforming a memory access pattern consisting of a single stride to one that concurrently accesses multiple strides, can boost the utilization of the hardware prefetcher, and in turn improves the performance of memory-bound kernels significantly. Using a set of micro-benchmarks, we establish that accessing memory in a multi-strided manner enables more cache lines to be concurrently brought into the cache, resulting in improved cache hit ratios and higher effective memory bandwidth without the introduction of costly software prefetch instructions. Subsequently, we show that multi-strided variants of a collection of six memory-bound dense compute kernels outperform state-of-the-art counterparts on three different micro-architectures. More specifically, for kernels among which Matrix Vector Multiplication, Convolution Stencil and kernels from PolyBench, we achieve significant speedups of up to 12.55x over Polly, 2.99x over MKL, 1.98x over OpenBLAS, 1.08x over Halide and 1.87x over OpenCV. The code transformation to take advantage of multi-strided memory access is a natural extension of the loop unroll and loop interchange techniques, allowing this method to be incorporated into compiler pipelines in the future.

Cite this paper

APA 7

Blom, M., Rietveld, K. F. D., & van Nieuwpoort, R. V. (2025). Multi-Strided Access Patterns to Boost Hardware Prefetching. https://doi.org/10.1145/3676151.3719375

MLA 9

Blom, M., et al. “Multi-Strided Access Patterns to Boost Hardware Prefetching.” 2025, pp. 204–15, https://doi.org/10.1145/3676151.3719375.

Chicago

Blom, M., Kristian F. D. Rietveld, and Rob V. van Nieuwpoort. 2025. “Multi-Strided Access Patterns to Boost Hardware Prefetching.” https://doi.org/10.1145/3676151.3719375.

Harvard

Blom, M., Rietveld, K.F.D. and van Nieuwpoort, R.V. (2025) ‘Multi-Strided Access Patterns to Boost Hardware Prefetching’. Available at: https://doi.org/10.1145/3676151.3719375.

BibTeX
@article{blom2025multi,
  title = {{Multi-Strided Access Patterns to Boost Hardware Prefetching}},
  author = {Blom, M. and Rietveld, Kristian F. D. and van Nieuwpoort, Rob V.},
  pages = {204--215},
  year = {2025},
  doi = {10.1145/3676151.3719375}
}

Made from the index record. Check names, capitalisation and page numbers against the paper. Need another style? AI for Research has over 10,000.