uCache: A Customizable Unikernel-based IO Cache
Ilya Meignan-Masson, Masanori Misono, Viktor Leis, Pramod Bhatotia
Abstract
Data-intensive cloud applications require highperformance IO caching to fully leverage modern storage systems like NVMe SSDs and cloud storage. Today's developers face a dilemma: choose a simple, but often slow, OS-level IO cache, or a fast, but complex, userspace cache. This trade-off forces developers to sacrifice either performance or simplicity.
This paper introduces uCache, a novel IO cache that resolves this fundamental tension. Leveraging a unikernelbased libOS architecture, uCache seamlessly integrates application-specific knowledge directly into the OS-level cache. It combines an mmap-like memory surface with an explicit, conventional interface, offering fine-grained control over cache behavior. This design allows for the seamless integration of application-specific semantics within the OS-level cache itself-a capability previously confined to complex userspace solutions; thus, ensuring scalability, performance, and adaptability. The core of uCache's flexibility is the uVFS abstraction, which enables direct adaptation to diverse IO backends while maintaining filesystem compatibility without the performance overheads of the traditional OS IO stack.
Our evaluation demonstrates that uCache effectively merges the simplicity of OS-level caches with the performance and flexibility of userspace solutions. For out-of-memory workloads, uCache achieves performance on par with kernelbypass IO libraries, proving it can eliminate the IO caching bottleneck for data-intensive applications.
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.
Your agent calls
Luneget_paper_fulltext
Free to start. No credit card required.
Terminal
Install the CLIlune papers fulltext 43fc286c-bd31-4fe1-85e6-5ea54a1c9d9cBuilds on27
- AIFM: High-Performance, Application-Integrated Far MemoryZhenyuan Ruan, Malte Schwarzkopf, Marcos K. Aguilera, Adam BelayOSDI 2020 · 224 citations
- Unikraft: fast, specialized unikernels the easy waySimon Kuenzer, Vlad-Andrei Badoiu, Hugo Lefeuvre, Sharan Santhanam et al.EuroSys 2021 · 116 citations
- XRP: In-Kernel Storage Functions with eBPFYuhong Zhong, Haoyu Li, Yu Jian Wu, Ioannis Zarkadas et al.OSDI 2022 · 100 citations
- Optimizing Memory-mapped I/O for Fast Storage DevicesAnastasios Papagiannis, Giorgos Xanthakis, Giorgos Saloustros, Manolis Marazakis et al.USENIX ATC 2020 · 68 citations
- BtrBlocks: Efficient Columnar Compression for Data LakesMaximilian Kuschewski, David Sauerwein, Adnan Alhomssi, Viktor LeisSIGMOD 2023 · 47 citations
Related papers
- Re-architecting I/O Caches for Emerging Fast Storage DevicesMohammadamin Ajdari, Pouria Peykani Sani, Amirhossein Moradi, Masoud Khanalizadeh Imani et al.ASPLOS 2023 · 3 citations
- TriCache: A User-Transparent Block Cache Enabling High-Performance Out-of-Core Processing with In-Memory ProgramsGuanyu Feng, Huanqi Cao, Xiaowei Zhu, Bowen Yu et al.OSDI 2022 · 18 citations
- GoCache: Accelerating Out-Of-Core Graph Queries with Pattern-Driven CachingZheng Yang, Yicheng Zhang, Lixiao Cui, Luofan Chen et al.ICDE 2026
- Reexamining Direct Cache Access to Optimize I/O Intensive Applications for Multi-hundred-gigabit NetworksAlireza Farshin, Amir Roozbeh, Gerald Q. Maguire Jr., Dejan KosticUSENIX ATC 2020 · 88 citations
- ScalaCache: Scalable User-Space Page Cache Management with Software-Hardware CoordinationLi Peng, Yuda An, You Zhou, Chenxi Wang et al.USENIX ATC 2024 · 6 citations
