Skip to main content
QUICK REVIEW

[论文解读] Hardware Translation Coherence for Virtualized Systems

Zi Yan, Guilherme Cox|arXiv (Cornell University)|Jan 25, 2017
Parallel Computing and Optimization Techniques参考文献 12被引用 6
一句话总结

本文提出HATRIC,一种硬件翻译一致性机制,利用现有的缓存一致性协议,在虚拟化系统中进行页重映射时高效地使翻译结构(TLB、MMU缓存、nTLB)失效。通过实现精确、有针对性的失效,且硬件开销极小,HATRIC在基于KVM的系统中实现了高达30%的性能提升和10%的能效降低,每CPU仅增加2%的面积开销。

ABSTRACT

To improve system performance, modern operating systems (OSes) often undertake activities that require modification of virtual-to-physical page translation mappings. For example, the OS may migrate data between physical frames to defragment memory and enable superpages. The OS may migrate pages of data between heterogeneous memory devices. We refer to all such activities as page remappings. Unfortunately, page remappings are expensive. We show that translation coherence is a major culprit and that systems employing virtualization are especially badly affected by their overheads. In response, we propose hardware translation invalidation and coherence or HATRIC, a readily implementable hardware mechanism to piggyback translation coherence atop existing cache coherence protocols. We perform detailed studies using KVM-based virtualization, showing that HATRIC achieves up to 30% performance and 10% energy benefits, for per-CPU area overheads of 2%. We also quantify HATRIC's benefits on systems running Xen and find up to 33% performance improvements.

研究动机与目标

  • 解决在具有异构内存的虚拟化系统中,因频繁页重映射导致的高吞吐量和高能耗的翻译一致性开销。
  • 克服基于软件的翻译一致性机制的局限性,该机制即使仅重映射单个页,也强制对所有翻译结构执行完整清除。
  • 设计一种硬件机制,实现对TLB、MMU缓存和嵌套TLB中受影响的翻译条目进行精确失效。
  • 确保与现有虚拟化扩展(如Intel VT-x、AMD-V)的兼容性,并支持对客户机和嵌套页表更新的支持。
  • 在最小化硬件复杂度和面积开销的同时,最大化在实际工作负载中的性能和能效。

提出的方法

  • 通过在一致性消息传输中附加翻译一致性信息,扩展现有的硬件缓存一致性协议,以支持翻译一致性。
  • 修改TLB、MMU缓存和嵌套TLB,使其支持仅对重映射页对应的条目进行有针对性的失效,而非执行完整清除。
  • 引入一种双粒度一致性目录,用于同时跟踪缓存行和翻译条目,从而高效识别缓存特定翻译的CPU。
  • 使用反向查找内容可寻址存储器(CAM),将系统物理地址映射到CPU标识符,使发起方能够仅识别出需要失效的特定目标CPU。
  • 设计轻量级的接收端处理机制,使CPU能够快速失效条目并发送确认,而不会干扰正在进行的工作负载。
  • 将HATRIC集成到KVM和Xen虚拟化堆栈中,利用具有代表性的内存工作负载评估其在真实场景下的性能和能效影响。

实验结果

研究问题

  • RQ1在频繁进行页重映射的虚拟化系统中,翻译一致性开销在多大程度上主导了系统性能?
  • RQ2能否将翻译一致性高效地与现有缓存一致性协议共置,以减少对翻译结构完整清除的需求?
  • RQ3与基于软件或粗粒度硬件的方法相比,HATRIC在失效精度方面如何在性能和能效效率方面表现?
  • RQ4HATRIC对依赖大量页迁移的异构内存架构系统有何影响?
  • RQ5在真实工作负载下,HATRIC在不同虚拟机监视器(如KVM和Xen)上的可扩展性如何?

主要发现

  • 与基于软件的翻译一致性相比,HATRIC在基于KVM的虚拟化系统中将系统运行时间减少了高达30%,能耗降低了高达10%。
  • 该机制仅在每CPU上增加2%的面积开销,使其在生产系统中具有高度实用性。
  • 在基于Xen的系统中,HATRIC相较于最佳的基于软件的分页策略,性能最高可提升33%,表明其在不同虚拟化平台间具有强大的通用性。
  • 与UNITD++相比,HATRIC在性能上领先5%–10%,且更节能,主要归因于避免使用反向查找CAM并减少了翻译结构查找的能耗。
  • 双粒度一致性目录的使用实现了对缓存行和翻译条目的高效跟踪,避免了大量冗余的一致性消息,且面积开销极小。
  • 激进的目录更新和细粒度跟踪机制带来的性能增益可忽略不计,但显著增加了能耗,证实HATRIC的简化设计为最优选择。

更好的研究,从现在开始

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

无需绑定信用卡

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