This repository contains the artifact for reproducing our EuroSys '24 paper "ScaleCache: A Scalable Page Cache for Multiple Solid-State Drives".
root
|---- fs (source code of the evaluated file systems)
|---- scext4 (ScaleCache ext4 kernel module)
|---- scxfs (ScaleCache xfs kernel module)
|---- kernel (5.4.147 Linux kernel)
|---- workloads (evaluation workloads)
|---- ffsb (The Flexible Filesystem Benchmark)
|---- filebench (Filebench: mailserver, fileserver, videoserver)
|---- fio (fio scripts)
|---- scripts (main evaluation scripts)
|---- sysbench (sysbench)
|---- YCSB_memcached (Yahoo! Cloud Serving Benchmark: Memcached)
|---- YCSB_rocksdb (Yahoo! Cloud Serving Benchmark: RocksDB)
Our artifact should run on any Linux distribution. The current scripts are developed for Ubuntu 20.04.3 LTS.
Note: For the below steps, our scripts will complain if it fails to compile or install the target. Check the end part of the scripts' output to ensure that the install is successful. Also, some scripts would prompt to ask the sudo permission at the beginning.
$ ./dep.sh
$ cd kernel
$ cp config-scalecache .config
$ make oldconfig (update the config with the provided .config file)
Next, please use your favorite way to compile and install the kernel. The below step is just for reference. The installation requires 50GB space and takes around 20 minutes on our machines.
The classical ways will work as well:
$ make -j64
$ make -j64 modules
$ sudo make -j64 modules_install
$ sudo make -j64 install
Reboot the machine to the installed 5.4.147-ScaleCache kernel.
$ cd scext4
$ make -j64
$ make install
$ sudo modprobe jbd3
$ sudo modprobe scext4
$ sudo mount -t scext4 DEVICE MOUNTPOINT
The script will compile, install, and insert the following kernel modules:
- jbd3
- scext4
4.1 FFSB
$ cd workloads/ffsb
$ ./compile.sh
4.2 Filebench
$ cd workloads/filebench
$ ./compile.sh
4.3 sysbench
$ cd workloads/sysbench
$ ./compile.sh
4.4 YCSB
$ cd workloads/YCSB_memcached
$ ./compile.sh
Kiet Tuan Pham (Chung-Ang University)
Seokjoo Cho (Chung-Ang University)
Sangjin Lee (Chung-Ang University)
Lan Anh Nguyen (Chung-Ang University)
Hyeongi Yeo (Chung-Ang University)
Ipoom Jeong (University of Illinois Urbana-Champaign)
Sungjin Lee (DGIST)
Nam Sung Kim (University of Illinois Urbana-Champaign)
Yongseok Son (Chung-Ang University)