epfl-dcsl / hovercraft

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

HovercRaft

This repository contains the code for the paper:

HovercRaft: Achieving Scalability and Fault-tolerance for microsecond-scale Datacenter Services
Marios Kogias, Edouard Bugnion
Eurosys 2020

You can find the paper here

Contents

The repository contains several submodules and directories.

r2p2
The codebase for the Request Response Pair Protocol for datacenter RPCs
raft
The raft codebase used with its modifications.
redis
The redis codebase with the R2P2 modifications
lancet
The lancet latency measuring tool and load generator used for the experiments
redismodule
A redis module that implements the YCSB-E workload used in HovercRaft's evaluation
distbenchr
A python package used to run distributed experiments
scripts
Basic scripts to deploy and run HovercRaft for the synthetic and Redis experiments.

Build

To get the dependencies and build an example run:

git submodule update --init --recursive
make hovercraft-stss

Check the Makefile for more build options.

Experiments

Check the scipts directory for running experiments. Configure the fabfile.py and driver.py scripts accordingly.

Also, configure the r2p2.conf for HovercRaft as described in the R2P2 repository.

About


Languages

Language:C 67.5%Language:Python 25.3%Language:Makefile 7.1%