@inproceedings{3a027d6dc4304f559036bf7ce9abea05,
title = "Magellan: A High-Performance Loop-Guided Prefetcher for Indirect Memory Access",
abstract = "Graph analytics and sparse linear algebra applications heavily rely on indirect memory access (IMA). IMAs are characterized by poor temporal and spatial locality, which causes frequent high-latency DRAM accesses. While dedicated hardware prefetchers for IMA have been explored, they target narrow access patterns and tend to introduce significant hardware complexity. Software prefetching offers a promising alternative, leveraging compiler analysis to prefetch indirection patterns. However, existing software prefetchers struggle with sparse applications due to limited loop iterations and complex IMA patterns across nested loops. We propose Magellan, a novel loop-guided software prefetcher designed to detect and schedule IMA prefetches efficiently. Magellan introduces two key innovations: (1) extracting dependence graphs across loop levels to detect complex IMA patterns and (2) capturing inner-outer loop semantics to prefetch for both current and future iterations. We evaluate Magellan on 14 memory-intensive benchmarks using real-world datasets from social networks and web graphs. Compared to the best existing IMA software prefetcher, Magellan reduces cache misses by 25\% and dynamic instruction counts by 14\% on average. This results in a 1.14{\texttimes} average speedup, with performance gains of up to 1.41{\texttimes}.",
keywords = "Indirect Memory Access, Memory Hierarchy, Software Prefetcher",
author = "Gelin Fu and Tian Xia and Mingzhuo Yin and Nair, \{Prashant J.\} and Mieszko Lis and Pengju Ren",
note = "Publisher Copyright: {\textcopyright} 2025 Copyright held by the owner/author(s).; 52nd Annual International Symposium on Computer Architecture, ISCA 2025 ; Conference date: 21-06-2025 Through 25-06-2025",
year = "2025",
month = jun,
day = "21",
doi = "10.1145/3695053.3731054",
language = "英语",
series = "Proceedings - International Symposium on Computer Architecture",
publisher = "Institute of Electrical and Electronics Engineers Inc.",
pages = "601--615",
booktitle = "ISCA 2025 - Proceedings of the 52nd Annual International Symposium on Computer Architecture",
}