The AWS evaluation setup is documented in aws/README.md. These instructions document a more manual setup.
The evaluation scripts use some environment variables that point to a few repositories:
export GO_NFSD_PATH=~/go-nfsd
export DAISY_NFSD_PATH=~/daisy-nfsd
export XV6_PATH=~/xv6-public
export LTP_PATH=~/ltp
You'll need to clone mit-pdos/go-nfsd, mit-pdos/xv6-public, and linux-test-project/ltp (this last one is only needed to run the stress tests).
This repo is mit-pdos/daisy-nfsd.
These instructions assume you've compiled the evaluation driver with go build ./cmd/daisy-eval
.
Run daisy-eval -i eval/data bench
. Then ./eval/eval.py -i eval/data bench
will produce a file eval/data/bench.data
.
Run daisy-eval -i eval/data bench
. Then ./eval/eval.py -i eval/data scale
will produce files for each system in data/{daisy-nfsd,go-nfsd,linux}.data
.
The daisy-eval
driver has an argument to set the disk file.
You can run ./plot.sh
to run the Python post-processing and gnuplot all at once.
Run ./tests.sh
to run the fsstress and fsx-linux tests. You'll need to clone
ltp and compile it; running ./tests.sh --help
will give you the right commands.
The default number of iterations runs each suite for about 10 seconds. To run
longer, run something like ./tests.sh 10
, which will scale the default
iteration counts by 10.