Practical, transparent operating system support for superpages
- 31 December 2002
- journal article
- Published by Association for Computing Machinery (ACM) in ACM SIGOPS Operating Systems Review
- Vol. 36 (SI) , 89-104
- https://doi.org/10.1145/844128.844138
Abstract
Most general-purpose processors provide support for memory pages of large sizes, called superpages. Superpages enable each entry in the translation lookaside buffer (TLB) to map a large physical memory region into a virtual address space. This dramatically increases TLB coverage, reduces TLB misses, and promises performance improvements for many applications. However, supporting superpages poses several challenges to the operating system, in terms of superpage allocation and promotion tradeoffs, fragmentation control, etc. We analyze these issues, and propose the design of an effective superpage management system. We implement it in FreeBSD on the Alpha CPU, and evaluate it on real workloads and benchmarks. We obtain substantial performance benefits, often exceeding 30%; these benefits are sustained even under stressful workload scenarios.Keywords
This publication has 14 references indexed in Scilit:
- FFTW: an adaptive software architecture for the FFTPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- SPEC CPU2000: measuring CPU performance in the New MillenniumComputer, 2000
- Reducing TLB and memory overhead using online superpage promotionPublished by Association for Computing Machinery (ACM) ,1995
- The impact of architectural trends on operating system performancePublished by Association for Computing Machinery (ACM) ,1995
- Surpassing the TLB performance of superpages with less operating system supportPublished by Association for Computing Machinery (ACM) ,1994
- Design tradeoffs for software-managed TLBsACM Transactions on Computer Systems, 1994
- Page placement algorithms for large real-indexed cachesACM Transactions on Computer Systems, 1992
- Tradeoffs in supporting two page sizesPublished by Association for Computing Machinery (ACM) ,1992
- Performance of the VAX-11/780 translation bufferACM Transactions on Computer Systems, 1985
- Buddy systemsCommunications of the ACM, 1977