Cache is King: Smart Page Eviction with eBPF
Tal Zussman, Ioannis Zarkadas, Jeremy Carin, Andrew Cheng, Hubertus, Franke, Jonas Pfefferle, Asaf Cidon

TL;DR
This paper introduces cachebpf, an eBPF-based framework for Linux that allows customizable page cache eviction policies without kernel modifications, significantly improving application performance.
Contribution
It presents a novel eBPF framework enabling flexible, workload-specific page cache policies in Linux, overcoming kernel modification challenges.
Findings
Up to 70% higher throughput with custom policies
58% lower tail latency achieved
Flexible implementation of various eviction policies
Abstract
The page cache is a central part of an OS. It reduces repeated accesses to storage by deciding which pages to retain in memory. As a result, the page cache has a significant impact on the performance of many applications. However, its one-size-fits-all eviction policy performs poorly in many workloads. While the systems community has experimented with a plethora of new and adaptive eviction policies in non-OS settings (e.g., key-value stores, CDNs), it is very difficult to implement such policies in the page cache, due to the complexity of modifying kernel code. To address these shortcomings, we design a novel eBPF-based framework for the Linux page cache, called , that allows developers to customize the page cache without modifying the kernel. enables applications to customize the page cache policy for their specific needs, while also ensuring…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsDigital and Cyber Forensics
