Trident: Harnessing Architectural Resources for All Page Sizes in x86 Processors
Venkat Sri Sai Ram, Ashish Panwar, Arkaprava Basu
Abstract
Intel and AMD processors have long supported more than one large page sizes -1GB and 2MB, to reduce address translation overheads for applications with large memory footprints. However, previous works on large pages have primarily focused on 2MB pages, partly due to a lack of evidence on the usefulness of 1GB pages to realworld applications. Consequently, micro-architectural resources devoted to 1GB pages have gone underutilized for a decade.
We quantitatively demonstrate where 1GB pages can be valuable, especially when employed in conjunction with 2MB pages. Unfortunately, the lack of application-transparent dynamic allocation of 1GB pages is to blame for the under-utilization of 1GB pages on today's systems. Toward this, we design and implement Trident in Linux to fully harness micro-architectural resources devoted for all page sizes in the current x86 hardware by transparently allocating 1GB, 2MB, and 4KB pages as suitable at runtime. Trident speeds up eight memory-intensive applications by 18%, on average, over Linux's use of 2MB pages. We then propose Trident pv , an extension to Trident that virtualizes 1GB pages via copy-less promotion and compaction in the guest OS. Overall, this paper shows that adequate software enablement brings practical relevance to even GB-sized pages, and motivates micro-architects to continue enhancing hardware support for all large page sizes.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers14
- MEMTIS: Efficient Memory Tiering with Dynamic Page Classification and Page Size DeterminationTaehyung Lee, Sumit Kumar Monga, Changwoo Min, Young Ik EomSOSP 2023 · 67 citations
- Similarity search in the blink of an eye with compressed indicesCecilia Aguerrebere, Ishwar Singh Bhati, Mark Hildebrand, Mariano Tepper et al.VLDB 2023 · 64 citations
- Contiguitas: The Pursuit of Physical Memory Contiguity in DatacentersKaiyang Zhao, Kaiwen Xue, Ziqi Wang, Dan Schatzberg et al.ISCA 2023 · 26 citations
- Page Size Aware Cache PrefetchingGeorgios Vavouliotis, Gino Chacon, Lluc Alvarez, Paul V. Gratz et al.MICRO 2022 · 24 citations
- Designing Virtual Memory System of MCM GPUsPratheek B, Neha Jawalkar, Arkaprava BasuMICRO 2022 · 21 citations
Builds on7
- Mitosis: Transparently Self-Replicating Page-Tables for Large-Memory MachinesReto Achermann, Ashish Panwar, Abhishek Bhattacharjee, Timothy Roscoe et al.ASPLOS 2020 · 62 citations
- Elastic Cuckoo Page Tables: Rethinking Virtual Memory Translation for ParallelismDimitrios Skarlatos, Apostolos Kokolis, Tianyin Xu, Josep TorrellasASPLOS 2020 · 55 citations
- Beyond malloc efficiency to fleet efficiency: a hugepage-aware memory allocatorA. H. Hunter, Chris Kennelly, Paul Turner, Darryl Gove et al.OSDI 2021 · 51 citations
- A Comprehensive Analysis of Superpage Management Mechanisms and PoliciesWeixi Zhu, Alan L. Cox, Scott RixnerUSENIX ATC 2020 · 40 citations
- Perforated Page: Supporting Fragmented Memory Allocation for Large PagesChang Hyun Park, Sanghoon Cha, Bokyeong Kim, Youngjin Kwon et al.ISCA 2020 · 35 citations
Related papers
- Elastic Translations: Fast Virtual Memory with Multiple Translation SizesStratos Psomadakis, Chloe Alverti, Vasileios Karakostas, Christos Katsakioris et al.MICRO 2024 · 4 citations
- Tailored Page SizesFaruk Guvenilir, Yale N. PattISCA 2020 · 22 citations
- Enhancing and Exploiting Contiguity for Fast Memory VirtualizationChloe Alverti, Stratos Psomadakis, Vasileios Karakostas, Jayneel Gandhi et al.ISCA 2020 · 41 citations
- Making Dynamic Page Coalescing Effective on Virtualized CloudsWeiwei Jia, Jiyuan Zhang, Jianchen Shan, Xiaoning DingEuroSys 2023 · 8 citations
- Translation Pass-Through for Near-Native Paging Performance in VMsShai Bergman, Mark Silberstein, Takahiro Shinagawa, Peter R. Pietzuch et al.USENIX ATC 2023 · 10 citations
