首页> 外文会议>ACM/IEEE Annual International Symposium on Computer Architecture >Translation Ranger: Operating System Support for Contiguity-Aware TLBs
【24h】

Translation Ranger: Operating System Support for Contiguity-Aware TLBs

机译:Translation Ranger:连续性感知TLB的操作系统支持

获取原文

摘要

Virtual memory (VM) eases programming effort but can suffer from high address translation overheads. Architects have traditionally coped by increasing Translation Lookaside Buffer (TLB) capacity; this approach, however, requires considerable hardware resources. One promising alternative is to rely on software-generated translation contiguity to compress page translation encodings within the TLB. To enable this, operating systems (OSes) have to assign spatially-adjacent groups of physical frames to contiguous groups of virtual pages, as doing so allows compression or coalescing of these contiguous translations in hardware. Unfortunately, modern OSes do not currently guarantee translation contiguity in many real-world scenarios; as systems remain online for long periods of time, their memory can and does become fragmented. We propose Translation Ranger, an OS service that recovers lost translation contiguity even where previous contiguity- generation proposals struggle with memory fragmentation. Translation Ranger increases contiguity by actively coalescing scattered physical frames into contiguous regions and can be leveraged by any contiguity-aware TLB without requiring changes to applications. We implement and evaluate Translation Ranger in Linux on real hardware and find that it generates contiguous memory regions 40x larger than the Linux default configuration, permitting TLB coverage of 120GB memory with typically no more than 128 contiguous translation regions. This is achieved with less than 2% run time overhead, a number that is outweighed by the TLB coverage improvements that Translation Ranger provides.
机译:虚拟内存(VM)简化了编程工作,但可能会遭受高地址转换开销。传统上,建筑师通过增加翻译后备缓冲区(TLB)的容量来应对。但是,这种方法需要大量的硬件资源。一种有前途的替代方法是依靠软件生成的翻译连续性来压缩TLB中的页面翻译编码。为此,操作系统(OS)必须将物理帧的空间相邻组分配给虚拟页的连续组,因为这样做可以在硬件中压缩或合并这些连续的转换。不幸的是,现代操作系统目前无法保证在许多实际场景中的翻译连续性。由于系统长时间保持联机状态,因此它们的内存可能并且确实变得支离破碎。我们建议使用Translation Ranger,这是一种OS服务,即使先前的连续性生成建议因内存碎片而挣扎,它也可以恢复丢失的转换连续性。 Translation Ranger通过将分散的物理帧主动合并到连续区域中来增加连续性,并且可以由任何了解连续性的TLB加以利用,而无需更改应用程序。我们在真实硬件上的Linux中实现和评估Translation Ranger,发现它生成的连续内存区域比Linux默认配置大40倍,从而允许TLB覆盖120GB内存,且通常不超过128个连续翻译区域。只需不到2%的运行时间开销即可实现这一目标,而Translation Ranger所提供的TLB覆盖范围改进则远远超过了这个数字。

著录项

相似文献

  • 外文文献
  • 中文文献
  • 专利
获取原文

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号