Virtual-Memory Assisted Buffer Management
Viktor Leis, Adnan Alhomssi, Tobias Ziegler, Yannick Loeck, Christian Dietrich
摘要
Most database management systems cache pages from storage in a main memory buffer pool. To do this, they either rely on a hash table that translates page identifiers into pointers, or on pointer swizzling which avoids this translation. In this work, we propose vmcache, a buffer manager design that instead uses hardware-supported virtual memory to translate page identifiers to virtual memory addresses. In contrast to existing mmap-based approaches, the DBMS retains control over page faulting and eviction. Our design is portable across modern operating systems, supports arbitrary graph data, enables variable-sized pages, and is easy to implement. One downside of relying on virtual memory is that with fast storage devices the existing operating system primitives for manipulating the page table can become a performance bottleneck. As a second contribution, we therefore propose exmap, which implements scalable page table manipulation on Linux. Together, vmcache and exmap provide flexible, efficient, and scalable buffer management on multi-core CPUs and fast storage devices.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了每一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper10
- LLFree: Scalable and Optionally-Persistent Page-Frame AllocationLars Wrenger, Florian Rommel, Alexander Halbuer, Christian Dietrich 等USENIX ATC 2023 · 被引用 17 次
- Cloud-Native Database Systems and Unikernels: Reimagining OS Abstractions for Modern HardwareViktor Leis, Christian DietrichVLDB 2024 · 被引用 12 次
- ExtMem: Enabling Application-Aware Virtual Memory Management for Data-Intensive ApplicationsSepehr Jalalian, Shaurya Patel, Milad Rezaei Hajidehi, Margo I. Seltzer 等USENIX ATC 2024 · 被引用 12 次
- StreamCache: Revisiting Page Cache for File Scanning on Fast Storage DevicesZhiyue Li, Guangyan ZhangUSENIX ATC 2024 · 被引用 9 次
- Why Files If You Have a DBMS?Lam-Duy Nguyen, Viktor LeisICDE 2024 · 被引用 7 次
它引用的顶会 Paper8
- Viper: An Efficient Hybrid PMem-DRAM Key-Value StoreLawrence Benson, Hendrik Makait, Tilmann RablVLDB 2021 · 被引用 86 次
- Optimizing Memory-mapped I/O for Fast Storage DevicesAnastasios Papagiannis, Giorgos Xanthakis, Giorgos Saloustros, Manolis Marazakis 等USENIX ATC 2020 · 被引用 68 次
- Rethinking Logging, Checkpoints, and Recovery for High-Performance Storage EnginesMichael Haubenschild, Caetano Sauer, Thomas Neumann, Viktor LeisSIGMOD 2020 · 被引用 43 次
- Spitfire: A Three-Tier Buffer Manager for Volatile and Non-Volatile MemoryXinjing Zhou, Joy Arulraj, Andrew Pavlo, David E. CohenSIGMOD 2021 · 被引用 42 次
- Don't shoot down TLB shootdowns!Nadav Amit, Amy Tai, Michael WeiEuroSys 2020 · 被引用 32 次
相关 Paper
- Predictive Translation: High-Performance Buffer Management Without the Trade-OffsMichael Zinsmeister, Lam-Duy Nguyen, Viktor Leis, Thomas NeumannSIGMOD 2026 · 被引用 3 次
- DaxVM: Stressing the Limits of Memory as a File InterfaceChloe Alverti, Vasileios Karakostas, Nikhita Kunati, Georgios I. Goumas 等MICRO 2022 · 被引用 9 次
- CARAT: a case for virtual memory through compiler- and runtime-based address translationBrian Suchy, Simone Campanoni, Nikos Hardavellas, Peter A. DindaPLDI 2020 · 被引用 16 次
- EMT: An OS Framework for New Memory Translation ArchitecturesSiyuan Chai, Jiyuan Zhang, Jongyul Kim, Alan Wang 等OSDI 2025 · 被引用 1 次
- Practical DB-OS Co-Design with Privileged Kernel BypassXinjing Zhou, Viktor Leis, Jinming Hu, Xiangyao Yu 等SIGMOD 2025 · 被引用 4 次
