Skip to main content
QUICK REVIEW

[论文解读] Banshee: Bandwidth-Efficient DRAM Caching Via Software/Hardware Cooperation

Xiangyao Yu, Christopher J. Hughes|arXiv (Cornell University)|Apr 10, 2017
Parallel Computing and Optimization Techniques参考文献 29被引用 8
一句话总结

Banshee 是一种软硬件协同设计的 DRAM 缓存,通过基于 PTE/TLB 的页映射消除标签查找开销,并采用带宽感知的采样频率替换策略,优化了封装内和封装外 DRAM 的带宽效率。与最佳先前设计(Alloy Cache)相比,它将封装内 DRAM 流量减少了 35.8%,性能提升了 15.0%,同时保持低延迟并支持大页(2 MB)。

ABSTRACT

Putting the DRAM on the same package with a processor enables several times higher memory bandwidth than conventional off-package DRAM. Yet, the latency of in-package DRAM is not appreciably lower than that of off-package DRAM. A promising use of in-package DRAM is as a large cache. Unfortunately, most previous DRAM cache designs mainly optimize for hit latency and do not consider off-chip bandwidth efficiency as a first-class design constraint. Hence, as we show in this paper, these designs are suboptimal for use with in-package DRAM. We propose a new DRAM cache design, Banshee, that optimizes for both in- and off-package DRAM bandwidth efficiency without degrading access latency. The key ideas are to eliminate the in-package DRAM bandwidth overheads due to costly tag accesses through virtual memory mechanism and to incorporate a bandwidth-aware frequency-based replacement policy that is biased to reduce unnecessary traffic to off-package DRAM. Our extensive evaluation shows that Banshee provides significant performance improvement and traffic reduction over state-of-the-art latency-optimized DRAM cache designs.

研究动机与目标

  • 解决现有 DRAM 缓存设计在带宽效率方面的不足,这些设计优先考虑低延迟,却忽视了对封装外和封装内 DRAM 带宽的使用。
  • 通过基于 PTE/TLB 的页映射,消除封装内 DRAM 缓存中昂贵的标签访问和元数据更新流量。
  • 设计一种带宽高效的替换策略,最小化不必要的数据和元数据在封装内和封装外 DRAM 间的移动。
  • 通过一种懒惰的批量更新机制与硬件标签缓冲区,简化 TLB 一致性并实现对大页(2 MB)的高效支持。
  • 在不牺牲访问延迟的前提下实现高带宽效率,尤其适用于带宽受限、内存受限的工作负载。

提出的方法

  • 使用 PTE 和 TLB 存储 DRAM 缓存存在信息,消除对独立标签存储的需求,减少标签查找流量。
  • 采用硬件管理的基于频率的替换(FBR)策略,仅缓存热页以减少替换流量。
  • 对频率计数器更新应用采样机制——仅读取/写入部分内存访问——以最小化带宽开销,同时保持预测准确性。
  • 在内存控制器处引入标签缓冲区,用于跟踪实时映射变化,并仅在缓冲区满时触发对页表和 TLB 的批量更新。
  • 采用懒惰的 TLB 一致性机制,将页表和 TLB 更新推迟至缓冲区溢出时进行,从而分摊成本并简化一致性维护。
  • 通过带宽感知的 FBR 策略和采样机制,显著降低替换开销,实现对 2 MB 大页的高效支持。

实验结果

研究问题

  • RQ1是否能够设计一种 DRAM 缓存,在不降低访问延迟的前提下,实现对封装内和封装外 DRAM 的高带宽效率?
  • RQ2在页粒度的 DRAM 缓存中,如何消除或最小化标签查找和元数据更新流量?
  • RQ3通过采样和硬件支持,能否使基于频率的替换策略实现带宽效率?
  • RQ4在基于 PTE/TLB 的 DRAM 缓存中,如何简化 TLB 一致性,以实现在不产生高开销的前提下高效替换?
  • RQ5在带宽优化的 DRAM 缓存中,大页(2 MB)能实现多大程度的高效支持?

主要发现

  • 与最佳先前设计(Alloy Cache)相比,Banshee 将封装内 DRAM 流量减少了 35.8%,显著提升了带宽效率。
  • 在带宽受限条件下,Banshee 相较于性能最佳的基线(Alloy Cache)实现了 15.0% 的性能提升。
  • 以 10% 或更低的频率对计数器进行采样,仅使未命中率小幅上升,但使计数器更新流量可忽略不计。
  • Banshee 的 4 路关联设计实现 30.9% 的未命中率,超过四路后收益递减,因此将其作为默认配置具有合理性。
  • Banshee 实现了对 2 MB 大页的高效支持,克服了传统基于页的缓存设计中高替换开销的难题。
  • 结合硬件标签缓冲区的懒惰 TLB 一致性机制显著降低了维护一致性的成本,实现了可扩展且高效的替换机制。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。