2012 · 198 citations · 29 references
Colt ImplementationsEngineeringExperimental TechnologyComputer ArchitectureHigh-performance ArchitectureHardware VirtualizationSystems EngineeringParallel ComputingMemory ManagementTranslation LookComputer EngineeringComputer ScienceVirtual MemoryProgram AnalysisParticle PhysicsCloud ComputingLarge-reach TlbsParallel ProgrammingSystem SoftwareVirtual Machine
Translation Look aside Buffers (TLBs) are critical to system performance, particularly as applications demand larger working sets and with the adoption of virtualization. Architectural support for super pages has previously been proposed to improve TLB performance. By allocating contiguous physical pages to contiguous virtual pages, the operating system (OS) constructs super pages which need just one TLB entry rather than the hundreds required for the constituent base pages. While this greatly reduces TLB misses, these gains are often offset by the implementation difficulties of generating and managing ample contiguity for super pages. We show, however, that basic OS memory allocation mechanisms such as buddy allocators and memory compaction naturally assign contiguous physical pages to contiguous virtual pages. Our real-system experiments show that while usually insufficient for super pages, these intermediate levels of contiguity exist under various system conditions and even under high load. In response, we propose Coalesced Large-Reach TLBs (CoLT), which leverage this intermediate contiguity to coalesce multiple virtual-to-physical page translations into single TLB entries. We show that CoLT implementations eliminate 40\% to 58\% of TLB misses on average, improving performance by 14\%. Overall, we demonstrate that the OS naturally generates page allocation contiguity. CoLT exploits this contiguity to eliminate TLB misses for next-generation, big-data applications with low-overhead implementations.
29
Chi-Keung Luk, Robert Cohn, Robert Muth et al. · ACM SIGPLAN Notices · 2005 · 3.2K citations
Engineering, Computer Architecture, Software Engineering +16
Chi-Keung Luk, Robert Cohn, Robert Muth et al. · 2005 · 2.3K citations
Engineering, Computer Architecture, Software Engineering +16
Using SimPoint for accurate and efficient simulation
Erez Perelman, Greg Hamerly, Michael Van Biesbrouck et al. · 2003 · 266 citations
Engineering, Computer Architecture, Software Engineering +25
Accelerating two-dimensional page walks for virtualized systems
Ravi Bhargava, Benjamin Serebrin, Francesco Spadini et al. · 2008 · 258 citations
The impact of architectural trends on operating system performance
Mendel Rosenblum, Edouard Bugnion, Stephen Alan Herrod et al. · 1995 · 218 citations · Full text