-
Notifications
You must be signed in to change notification settings - Fork 4
Quick start
You can try Fex by running a simple experiment: measure overheads of AddressSanitizer over native on a set of benchmarks in Phoenix benchmark suite.
We will do all measurements inside a Docker container. If don't have an image yet, you have to build it first:
make
Run a container and enter it (another shell will appear):
make run
Inside the container, install Phoenix dependencies:
./fex.py install -n phoenix
Afterwards, everything should be ready for the experiment.
Our experiment can be started with:
./fex.py run -n phoenix -t gcc_native gcc_asan -r 5
We've used the following configuration:
-
-n phoenix
: use Phoenix benchmark suite -
-t gcc_native gcc_asan
: use GCC for compilation and build two versions---non-protected (default compilation flags flags) and protected by ASan -
-r 5
: to reduce influence of external factors, we will run everything 5 times
The results of the experiment will be stored under /data/results/phoenix/
.
Fex is packaged with configuration for building barplots. We will use it to plot our results:
./fex.py plot -n phoenix -t perf -f /data/results/phoenix
The plot will be stored in the same directory.
You can access it from outside the container by going to data_/results/phoenix
in your current project directory (/data/
is mounted into your host file system as your_project_path/data_/
).