Mosaic Pages: Big TLB Reach with Small Pages

Krishnan Gosakan, Jaehyun Han, William Kuszmaul, Ibrahim N. Mubarek, Nirjhar Mukherjee, Karthik Sriram, Guido Tagliavini, Evan West, Michael A. Bender, Abhishek Bhattacharjee, Alex Conway, Martin Farach-Colton, Jayneel Gandhi, Rob Johnson, Sudarsun Kannan, Donald E. Porter

    Research output: Chapter in Book/Report/Conference proceedingConference contribution

    Abstract

    The TLB is increasingly a bottleneck for big data applications. In most designs, the number of TLB entries are highly constrained by latency requirements, and growing much more slowly than the working sets of applications. Many solutions to this problem, such as huge pages, perforated pages, or TLB coalescing, rely on physical contiguity for performance gains, yet the cost of defragmenting memory can easily nullify these gains. This paper introduces mosaic pages, which increase TLB reach by compressing multiple, discrete translations into one TLB entry. Mosaic leverages virtual contiguity for locality, but does not use physical contiguity. Mosaic relies on recent advances in hashing theory to constrain memory mappings, in order to realize this physical address compression without reducing memory utilization or increasing swapping. This paper presents a full-system prototype of Mosaic, in gem5 and modified Linux. In simulation and with comparable hardware to a traditional design, mosaic reduces TLB misses in several workloads by 6-81%. Our results show that Mosaic's constraints on memory mappings do not harm performance, we never see conflicts before memory is 98% full in our experiments-at which point, a traditional design would also likely swap. Once memory is over-committed, Mosaic swaps fewer pages than Linux in most cases. Finally, we present timing and area analysis for a verilog implementation of the hashing function required on the critical path for the TLB, and show that on a commercial 28nm CMOS process; the circuit runs at a maximum frequency of 4 GHz, indicating that a mosaic TLB is unlikely to affect clock frequency.

    Original languageEnglish (US)
    Title of host publicationASPLOS 2023 - Proceedings of the 28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems
    EditorsTor M. Aamodt, Natalie Enright Jerger, Michael Swift
    PublisherAssociation for Computing Machinery
    Pages433-448
    Number of pages16
    ISBN (Electronic)9781450399180
    DOIs
    StatePublished - Mar 25 2023
    Event28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2023 - Vancouver, Canada
    Duration: Mar 25 2023Mar 29 2023

    Publication series

    NameInternational Conference on Architectural Support for Programming Languages and Operating Systems - ASPLOS
    Volume3

    Conference

    Conference28th ACM International Conference on Architectural Support for Programming Languages and Operating Systems, ASPLOS 2023
    Country/TerritoryCanada
    CityVancouver
    Period3/25/233/29/23

    Keywords

    • TLB
    • address translation
    • hashing
    • paging
    • virtual memory

    ASJC Scopus subject areas

    • Software
    • Information Systems
    • Hardware and Architecture

    Fingerprint

    Dive into the research topics of 'Mosaic Pages: Big TLB Reach with Small Pages'. Together they form a unique fingerprint.

    Cite this