I'm looking for an endorser to help preprint LearnedCache onto arXiv - if you or anyone you know is able to, please reach out at zejiaqi [at] uw [dot] edu.
This repository contains the tracers and policies for LearnedCache. The developed FIFO policies can be found in /policies, and harnesses can be found in /lc-bench and /lc-eval. This repository is a modified fork of the source code and scripts for cache_ext, the framework used for implementation. If using cache_ext, please cite the reference below.
This section is adapted from the cache_ext repository.
First, clone the repo and initialize the submodules:
cd /mydata
git clone https://github.com/JayAndJef/cache_ext_lc.git
cd cache_ext_lc
git submodule update --init --recursiveNext, you must compile and install the custom Linux kernel:
./install_kernel.shThis will also set up libbpf and bpftool.
After the kernel is compiled and installed, you will be prompted to reboot into cache_ext kernel:
sudo grub-reboot "Advanced options for Ubuntu>Ubuntu, with Linux 6.6.8-cache-ext+"
sudo reboot nowThen, the scripts located in /lc-eval can be used to run the modified policies.
If using cache_ext, please include the following citation:
@inproceedings{cacheext,
author = {Zussman, Tal and Zarkadas, Ioannis and Carin, Jeremy and Cheng, Andrew and Franke, Hubertus and Pfefferle, Jonas and Cidon, Asaf},
title = {cache_ext: Customizing the Page Cache with eBPF},
year = {2025},
isbn = {9798400718700},
publisher = {Association for Computing Machinery},
address = {New York, NY, USA},
url = {https://doi.org/10.1145/3731569.3764820},
doi = {10.1145/3731569.3764820},
pages = {462–478},
numpages = {17},
keywords = {operating systems, eBPF, page cache},
location = {Lotte Hotel World, Seoul, Republic of Korea},
series = {SOSP '25}
}