usenix conference policies
Implementation of Multiple Pagesize Support in HP-UX
Indira Subramanian, Cliff Mather, Kurt Peterson, and Balakrishna Raghunath, Hewlett-Packard Company
To reduce performance degradation from Translation Lookaside Buffer (TLB) misses without significant increase in TLB size, most modern processors implement TLBs that support multiple pagesizes. For example, Hewlett-Packard's PA-8000 processor allows 8 hardware pagesizes, in multiples of four, ranging from 4 Kbytes to 64 Mbytes.
In implementing multiple pagesize support in HP-UX, we chose to create large pages at page-fault service time. We have a buddy system allocator that provides interfaces for allocating and freeing multiple pagesizes. We maintain the Virtual Memory (VM) data structures such as the pagetable entry, virtual page frame descriptor, and physical page frame descriptor based on the smallest pagesize, and represent a large pagesize as a collection of these base pagesize structures. In our implementation, VM operations on a large pagesize such as 16KB are carried out by looping over the 4KB-based constituent VM data structures. Our system offers signifiant application performance improvement when using large pagesizes.
author = {Indira Subramanian and Cliff Mather and Kurt Peterson and Balakrishna Raghunath},
title = {Implementation of Multiple Pagesize Support in {HP-UX}},
booktitle = {1998 USENIX Annual Technical Conference (USENIX ATC 98)},
year = {1998},
address = {New Orleans, LA},
url = {https://www.usenix.org/conference/1998-usenix-annual-technical-conference/implementation-multiple-pagesize-support-hp-ux},
publisher = {USENIX Association},
month = jun
}
connect with us