Surpassing the TLB performance of superpages with less operating system support

ASPLOS VI Pub Date : 1994-11-01 DOI:10.1145/195473.195531
Madhusudhan Talluri, M. Hill
{"title":"Surpassing the TLB performance of superpages with less operating system support","authors":"Madhusudhan Talluri, M. Hill","doi":"10.1145/195473.195531","DOIUrl":null,"url":null,"abstract":"Many commercial microprocessor architectures have added translation lookaside buffer (TLB) support for superpages. Superpages differ from segments because their size must be a power of two multiple of the base page size and they must be aligned in both virtual and physical address spaces. Very large superpages (e.g., 1MB) are clearly useful for mapping special structures, such as kernel data or frame buffers. This paper considers the architectural and operating system support required to exploit medium-sized superpages (e.g., 64KB, i.e., sixteen times a 4KB base page size). First, we show that superpages improve TLB performance only after invasive operating system modifications that introduce considerable overhead.\nWe then propose two subblock TLB designs as alternate ways to improve TLB performance. Analogous to a subblock cache, a complete-subblock TLB associates a tag with a superpage-sized region but has valid bits, physical page number, attributes, etc., for each possible base page mapping. A partial-subblock TLB entry is much smaller than a complete-subblock TLB entry, because it shares physical page number and attribute fields across base page mappings. A drawback of a partial-subblock TLB is that base page mappings can share a TLB entry only if they map to consecutive physical pages and have the same attributes. We propose a physical memory allocation algorithm, page reservation, that makes this sharing more likely. When page reservation is used, experimental results show partial-subblock TLBs perform better than superpage TLBs, while requiring simpler operating system changes. If operating system changes are inappropriate, however, complete-subblock TLBs perform best.","PeriodicalId":140481,"journal":{"name":"ASPLOS VI","volume":"7 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"1994-11-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"251","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"ASPLOS VI","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/195473.195531","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 251

Abstract

Many commercial microprocessor architectures have added translation lookaside buffer (TLB) support for superpages. Superpages differ from segments because their size must be a power of two multiple of the base page size and they must be aligned in both virtual and physical address spaces. Very large superpages (e.g., 1MB) are clearly useful for mapping special structures, such as kernel data or frame buffers. This paper considers the architectural and operating system support required to exploit medium-sized superpages (e.g., 64KB, i.e., sixteen times a 4KB base page size). First, we show that superpages improve TLB performance only after invasive operating system modifications that introduce considerable overhead. We then propose two subblock TLB designs as alternate ways to improve TLB performance. Analogous to a subblock cache, a complete-subblock TLB associates a tag with a superpage-sized region but has valid bits, physical page number, attributes, etc., for each possible base page mapping. A partial-subblock TLB entry is much smaller than a complete-subblock TLB entry, because it shares physical page number and attribute fields across base page mappings. A drawback of a partial-subblock TLB is that base page mappings can share a TLB entry only if they map to consecutive physical pages and have the same attributes. We propose a physical memory allocation algorithm, page reservation, that makes this sharing more likely. When page reservation is used, experimental results show partial-subblock TLBs perform better than superpage TLBs, while requiring simpler operating system changes. If operating system changes are inappropriate, however, complete-subblock TLBs perform best.
在操作系统支持较少的情况下,超越超级页面的TLB性能
许多商用微处理器体系结构已经为超级页面添加了翻译暂置缓冲区(TLB)支持。超页不同于段,因为它们的大小必须是基本页大小的两倍,并且它们必须在虚拟和物理地址空间中对齐。非常大的超页(例如1MB)对于映射特殊结构(如内核数据或帧缓冲区)显然是有用的。本文考虑了利用中等大小的超页(例如,64KB,即4KB基本页大小的16倍)所需的体系结构和操作系统支持。首先,我们展示了超级页面只有在引入大量开销的侵入性操作系统修改之后才能提高TLB性能。然后,我们提出了两个子块TLB设计作为改进TLB性能的替代方法。与子块缓存类似,完整子块TLB将标记与超页大小的区域关联起来,但对于每个可能的基本页映射都具有有效的位、物理页码、属性等。部分子块TLB项比完整子块TLB项小得多,因为它跨基本页映射共享物理页码和属性字段。部分子块TLB的一个缺点是,只有当基本页映射映射到连续的物理页并且具有相同的属性时,它们才能共享一个TLB条目。我们提出了一种物理内存分配算法,页面保留,这使得这种共享更有可能。当使用页面保留时,实验结果表明部分子块tlb比超页tlb性能更好,同时需要更简单的操作系统更改。但是,如果操作系统更改不合适,则完整子块tlb的性能最好。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:604180095
Book学术官方微信