Skip to main content

Variable Radix Page Table: A Page Table for Modern Architectures

  • Conference paper
Advances in Computer Systems Architecture (ACSAC 2003)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 2823))

Included in the following conference series:

  • 449 Accesses

Abstract

This paper presents a new page table structure, the variable radix page table, which overcomes many of the disadvantages of other page table structures. Unlike a hashed page table, the variable radix page table naturally accommodates shared segments and mixed page sizes. But unlike a multi-level page table, the radix page table is space-efficient and requires few memory references to look up, even in large and sparse address spaces. Our measurements show that the variable radix page table outperforms other page table structures, and is even competitive with a memory-based TLB cache.

Recent research has shown that thrashing of the TLB is an increasing bottleneck in modern processors: measurements of the TLB’s contribution to execution time often exceed 40%. Such results sometimes even understate the full impact of TLB thrashing due to the presence of indirect overheads such as cache pollution and the effect of exceptions on the processor pipeline. By reducing the cost of TLB misses, the variable radix page table can achieve a significant overall speedup. The variable radix page table’s mixed page size support also facilitates the reduction of TLB miss frequency, addressing the architectural imbalance that causes TLB thrashing. Our conclusions are also significant in the debate on the different hardware organizations in use for virtual memory.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Clark, D.W., Emer, J.S.: Performance of the VAX-11/780 translation buffer: Simulation and measurement. ACM Trans. Comp. Syst. 3, 31–62 (1985)

    Article  Google Scholar 

  2. Huck, J., Hays, J.: Architectural support for translation table management in large address space machines. In: Proc. 20th ISCA, pp. 39–50. ACM, New York (1993)

    Google Scholar 

  3. Romer, T.H., Ohllrich, W.H., Karlin, A.R., Bershad, B.N.: Reducing TLB and memory overhead using online superpage promotion. In: Proc. 22nd ISCA, Santa Margherita Ligure, Itay, pp. 176–187. ACM, New York (1995)

    Google Scholar 

  4. Subramanian, I., Mather, C., Peterson, K., Raghunath, B.: Implementation of multiple pagesize support in HP-UX. In: Proc. 1998 USENIX Techn. Conf., New Orleans, USA (1998)

    Google Scholar 

  5. Navarro, J., Iyer, S., Druschel, P., Cox, A.: Practical, transparent operating system support for superpages. In: Proc. 5th USENIX OSDI, Boston, MA, USA (2002)

    Google Scholar 

  6. Kandiraju, G.B., Sivasubramaniam, A.: Going the distance for TLB prefetching: An application-driven study. In: Proc. 29th ISCA, Anchorage, USA (2002)

    Google Scholar 

  7. Ganapathy, N., Schimmel, C.: General purpose operating system support for multiple page sizes. In: Proc. 1998 USENIX Techn. Conf., New Orleans, USA (1998)

    Google Scholar 

  8. Swanson, M., Stoller, L., Carter, J.: Increasing TLB reach using superpages backed by shadow memory. In: Proc. 25th ISCA, pp. 204–213. ACM, New York (1998)

    Google Scholar 

  9. Chapman, M., Wienand, I., Heiser, G.: Itanium page tables and TLB. Technical Report UNSW-CSE-TR-0307, School Comp. Sci. & Engin., University NSW, Sydney 2052, Australia (2003)

    Google Scholar 

  10. Wiggins, A., Tuch, H., Uhlig, V., Heiser, G.: Implementation of fast address space switching and TLB sharing on the StrongARM processor. In: Omondi, A.R., Sedukhin, S.G. (eds.) ACSAC 2003. LNCS, vol. 2823, Springer, Heidelberg (2003)

    Google Scholar 

  11. Khalidi, Y.A., Talluri, M.: Improving the address translation performance of widely shared pages. Technical Report TR-95-38, Sun Microsystems Laboratories, Mountain View CA (1995)

    Google Scholar 

  12. Talluri, M., Hill, M.D., Khalid, Y.A.: A new page table for 64-bit address spaces. In: Proc. 15th ACM SOSP, Copper Mountain Resort, Co, USA, pp. 184–200 (1995)

    Google Scholar 

  13. Morrison, D.R.: Patricia: Practical algorithm to retrieve information coded in alphanumeric. Journal of the ACM 15, 514–534 (1968)

    Article  Google Scholar 

  14. Liedtke, J.: Improving IPC by kernel design. In: Proc. 14th ACM SOSP, Asheville, NC, USA, pp. 175–188 (1993)

    Google Scholar 

  15. Elphinstone, K.: Virtual Memory in a 64-bit Microkernel. PhD thesis, School Comp. Sci. & Engin., University NSW, Sydney 2052, Australia (1999), http://www.cse.unsw.edu.au/~disy/papers

  16. Andersson, A., Nilsson, S.: Improved behavior of tries by adaptive branching. Information Processing Letters 46, 295–300 (1993)

    Article  MATH  MathSciNet  Google Scholar 

  17. Nilsson, S., Tikkanen, M.: Implementing a dynamic compressed trie. In: Mehlhorn, K. (ed.) 2nd WS. Alorithmic Engin. (1998), http://www.nada.kth.se/~snilsson/public/papers/dyntrie

  18. Corbet, J.: Kernel development. Linux Weekly News (2002), http://lwn.net/2002/0207/kernel.php3

  19. Dillon, M.: Design elements of the FreeBSD VM system. Daemon News (2000), http://www.daemonnews.org/200001/freebsd_vm.html.

  20. Chen, J.B., Borg, A., Jouppi, N.P.: A simulation based study of TLB performance. In: Proc. 19th ISCA, ACM Press, New York (1992)

    Google Scholar 

  21. Elphinstone, K., Heiser, G., Liedtke, J.: L4 Reference Manual: MIPS R4x00. School Comp. Sci. & Engin., University NSW, Sydney 2052, Australia (1997) UNSW-CSE-TR-9709

    Google Scholar 

  22. Liedtke, J., Elphinstone, K.: Guarded page tables on MIPS R4600 or an exercise in architecture-dependent micro optimization. Technical Report UNSW-CSETR- 9503, School Comp. Sci. & Engin., University NSW, Sydney 2052, Australia (1995)

    Google Scholar 

  23. Bala, K., Kaashoek, M.F., Weihl, W.E.: Software prefetching and caching for translation lookaside buffers. In: Proc. 1st USENIX OSDI, Monterey, CA, USA, USENIX/ACM/IEEE, pp. 243–253 (1994)

    Google Scholar 

  24. Talluri, M., Hill, M.D.: Surpassing the TLB performance of superpages with less operating system support. In: Proc. 6th ASPLOS, pp. 171–182 (1994)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2003 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Szmajda, C., Heiser, G. (2003). Variable Radix Page Table: A Page Table for Modern Architectures. In: Omondi, A., Sedukhin, S. (eds) Advances in Computer Systems Architecture. ACSAC 2003. Lecture Notes in Computer Science, vol 2823. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-39864-6_24

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-39864-6_24

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-20122-9

  • Online ISBN: 978-3-540-39864-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics