Practical Temporal Prefetching With Compressed On-Chip Metadata

Practical Temporal Prefetching With Compressed On-Chip Metadata
复制标题

DOI:
10.1109/tc.2021.3065909
复制
发表时间:
2022-11
影响因子:
3.7
通讯作者:
Hao Wu;Krishnendra Nathella;Matthew Pabst;Dam Sunwoo;Akanksha Jain;Calvin Lin
Hao Wu;Krishnendra Nathella;Matthew Pabst;Dam Sunwoo;Akanksha Jain;Calvin Lin
中科院分区:
计算机科学2区
文献类型:
--
作者:
Hao Wu;Krishnendra Nathella;Matthew Pabst;Dam Sunwoo;Akanksha Jain;Calvin Lin

文献摘要

被引文献

相似文献

时间预取器功能强大,因为它们可以预取不规则的内存访问序列,但时间预取器在商业上不可行,因为它们在 DRAM 中存储大量元数据。本文介绍了 Triage,第一个不需要片外元数据的时态数据预取器。分类基于两个见解:(1) 元数据的用途并不相同,因此不需要保存不太有用的元数据,(2) 对于不规则的工作负载,使用 LLC 的部分来存储元数据比使用数据更有利可图。我们还引入了新颖的方案来识别有用的元数据、压缩元数据以及确定专用于元数据的 LLC 比例。使用在单核系统上运行不规则工作负载的工业级模拟器,我们发现,在预取程度为 4 时,Triage 与没有预取的基准相比,性能提高了 41.1%,而仅使用片上元数据的最先进的预取器 BO 的性能仅提高了 10.9%。与使用片外元数据的临时预取器 MISB 相比,Triage 提供了一种设计替代方案,可将内存流量减少一个数量级(1 级 MISB 额外流量为 260.8%,而 Triage 为 56.9%),同时将覆盖范围减少 20%。
Temporal prefetchers are powerful because they can prefetch irregular sequences of memory accesses, but temporal prefetchers are commercially infeasible because they store large amounts of metadata in DRAM. This article presents Triage, the first temporal data prefetcher that does not require off-chip metadata. Triage builds on two insights: (1) Metadata are not equally useful, so the less useful metadata need not be saved, and (2) for irregular workloads, it is more profitable to use portions of the LLC to store metadata than data. We also introduce novel schemes to identify useful metadata, to compress metadata, and to determine the fraction of the LLC to dedicate for metadata. Using an industrial-strength simulator running irregular workloads on a single-core system, we show that at a prefetch degree of 4, Triage improves performance by 41.1 percent compared to a baseline with no prefetching, whereas BO, a state-of-the-art prefetcher that uses only on-chip metadata, sees only 10.9 percent improvement. Compared with MISB, a temporal prefetcher that uses off-chip metadata, Triage provides a design alternative that reduces memory traffic by an order of magnitude (260.8 percent extra traffic for MISB at degree 1 versus 56.9 percent for Triage), while reducing coverage by 20 percent.