Skip to content

netlab-wisconsin/Flint

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Building an Elastic Block Storage over EBOFs Using Shadow Views

This is the codebase for paper Building an Elastic Block Storage over EBOFs Using Shadow Views at NSDI '25.

Introduction

Flint is an elastic block storage over EBOFs. It is tenant-aware and remote target-aware, delivering efficient multi-tenancy and workload adaptiveness.

Instructions

As the first step, create logical volumes on each FS1600 EBOF NVMe drive on the control plane web interface and connect to them via NVMe-TCP.

To build the project, install dependencies through install_deps.sh and run

mkdir build
cd build
cmake .. -DCMAKE_PREFIX_PATH=/path/to/deps
make -j8

The arbiter process is recommended to run on a dedicated node

sudo ./arbiter example_conf.yaml

In tools, we provide these tools:

./tools/ssd_tool 
Usage: ssd_tool [options] [arguments]
Options:
  -h, --help          Display this help message
  -d, --device        ssd to format
  -f, --format        Format ssd
      --format-all    Format all ssd
  -a, --show-all      Display all ssd information
Usage: volume_tool [options] [arguments]
Options:
  -h, --help        Display this help message
  -c, --create      Create volume
  -r, --remove      Remove volume
  -f, --rep-factor  Replication factor
  -s, --size        Size of the volume in MiB
  -p, --policy      Extent allocation policy of the volume
  -v, --show        List single volume
      --show-all    List all volumes

The bench_tool should run with a spec yaml. We provide an example under tools/.

About

Building an Elastic Block Storage over EBOFs Using Shadow Views

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages