Compendia: reducing virtual-memory costs via selective densification
- 22 June 2021
- conference paper
- conference paper
- Published by Association for Computing Machinery (ACM)
Abstract
Virtual-to-physical memory translation is becoming an increasingly dominant cost in workload execution; as data sizes scale, up to four memory accesses are required per translation, and 24 in virtualised systems. However, the radix trees in use today to hold these translations have many favorable properties, including cacheability, ability to fit in conventional 4 KiB page frames, and a sparse representation. They are therefore unlikely to be replaced in the near future. In this paper we argue that these structures are actually too sparse for modern workloads, so many of the overheads are unnecessary. Instead, where appropriate, we expand groups of 4 KiB layers, each able to translate 9 bits of address space, into a single 2 MiB layer, able to translate 18 bits in a single memory access. These fit in the standard huge-page allocations used by most conventional operating systems and architectures. With minor extensions to the page-table-walker structures to support these, and aid in their cacheability, we can reduce memory accesses per walk by 27%, or 56% for virtualised systems, without significant memory overhead.Keywords
Funding Information
- EPSRC (EP/P020011/1)
This publication has 39 references indexed in Scilit:
- Staring into the abyssProceedings of the VLDB Endowment, 2014
- BadgerTrapACM SIGARCH Computer Architecture News, 2014
- Efficient virtual memory for big memory serversACM SIGARCH Computer Architecture News, 2013
- Revisiting hardware-assisted page walks for virtualized systemsACM SIGARCH Computer Architecture News, 2012
- Translation cachingACM SIGARCH Computer Architecture News, 2010
- A comparison of software and hardware techniques for x86 virtualizationACM SIGOPS Operating Systems Review, 2006
- Memory resource management in VMware ESX serverACM SIGOPS Operating Systems Review, 2002
- Practical, transparent operating system support for superpagesACM SIGOPS Operating Systems Review, 2002
- A new page table for 64-bit address spacesACM SIGOPS Operating Systems Review, 1995
- Architectural support for translation table management in large address space machinesACM SIGARCH Computer Architecture News, 1993