Affiliation:
1. Rice University, Houston, TX, USA
Abstract
This paper explores the design space of MMU caches that accelerate virtual-to-physical address translation in processor architectures, such as x86-64, that use a radix tree page table. In particular, these caches accelerate the page table walk that occurs after a miss in the Translation Lookaside Buffer. This paper shows that the most effective MMU caches are translation caches, which store partial translations and allow the page walk hardware to skip one or more levels of the page table.
In recent years, both AMD and Intel processors have implemented MMU caches. However, their implementations are quite different and represent distinct points in the design space. This paper introduces three new MMU cache structures that round out the design space and directly compares the effectiveness of all five organizations. This comparison shows that two of the newly introduced structures, both of which are translation cache variants, are better than existing structures in many situations.
Finally, this paper contributes to the age-old discourse concerning the relative effectiveness of different page table organizations. Generally speaking, earlier studies concluded that organizations based on hashing, such as the inverted page table, outperformed organizations based upon radix trees for supporting large virtual address spaces. However, these studies did not take into account the possibility of caching page table entries from the higher levels of the radix tree. This paper shows that any of the five MMU cache structures will reduce radix tree page table DRAM accesses far below an inverted page table.
Publisher
Association for Computing Machinery (ACM)
Reference23 articles.
1. AMD x86-64 Architecture Programmer's Manual Volume 2. AMD x86-64 Architecture Programmer's Manual Volume 2.
2. The ASCI sweep3d Benchmark Code. The ASCI sweep3d Benchmark Code.
3. Intel 64 and IA-32 Architectures Software Developer's Manual Volume 3A: System Programming Guide Part 1. Intel 64 and IA-32 Architectures Software Developer's Manual Volume 3A: System Programming Guide Part 1.
4. Intel Itanium Architecture Software Developer's Manual - Volume 2: System Architecture Revision 2.2. Intel Itanium Architecture Software Developer's Manual - Volume 2: System Architecture Revision 2.2.
5. UltraSPARC III Cu User's Manual. UltraSPARC III Cu User's Manual.
Cited by
38 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献