cache_ext
cache_ext is a research framework for application-specific Linux page-cache eviction and admission policies implemented with eBPF.
Policy functions operate on eviction lists and use application information to choose cache contents. Policies are scoped to cgroups; this is not a separate private copy of every file page. [1]
The artifact requires a modified Linux 6.6.8 kernel, supporting BPF tools and application components. Avoiding further kernel edits when writing a policy does not remove that prerequisite. This artifact is not an installation recipe for an unmodified distribution kernel. [2]
The 2026 presentation still identifies live policy switching and cgroup lifetime management as open questions. Policy isolation is not a guarantee of latency, fairness or durable writes. [3]
Relations
- related
- Page cache, Cache pollution, Cache admission, SIEVE cache eviction, S3-FIFO, POSIX_FADV_DONTNEED
Advantages
- Lets applications supply information about foreground reads and background scans to cache policy. [3]
Limitations
- Reported gains depend on the selected workload and policy, not a universal cache speedup. [3]
- Reproducing the artifact needs its patched-kernel environment. [2]
Citations
- Zussman et al. cache_ext: Customizing the Page Cache with eBPF. SOSP 2025, pp. 462-478; sections 4-6. DOI 10.1145/3731569.3764820.
- cache_ext artifact README at commit 6c3b8a0: patched Linux 6.6.8, components and reproduction setup.
- Cheng et al. cache_ext, LSF/MM/BPF 2026 slides: per-cgroup hooks, workload separation and open integration questions.
Further reading
Sources & caveats
- Source synthesis, not a Hesela kernel benchmark or reproduction of the authors' experiment.
- The February 2025 preprint used cachebpf; the SOSP 2025 publication and artifact use cache_ext. One identity retains both search names.
- Pinned artifact commit 6c3b8a0df790c3182a4f6cab33f3e4db23d6f813. No kernel or benchmark installation was performed.