This project uses Docker to facilitate reproducibility. As such, it has the following dependencies:
- Cuda 9.0 Runtime -- available here
- Docker -- available here
- nvidia-docker2, install instructions found here
- Docker nvidia container, installed with:
sudo apt install nvidia-container-runtime
To generate a docker image named guiding-optimisation, run:
docker build -t guiding-optimisation .
To start the docker image run:
docker run --runtime=nvidia -it --mount src=
pwd,target=/tuning-hints-with-aiwc,type=bind -p 8888:8888 -p 9091:9091 --net=host adi/tuning-hints-with-aiwc
And run the codes with:
cd /guiding-optimisation-with-aiwc/codes
make
make test
This generates a sample of the runtimes with libscibench and the AIWC metrics
For reproducibility, BeakerX has also been added for replicating results and for the transparency of analysis. It is lauched by running:
cd /guiding-optimisation-with-aiwc/codes
beakerx --allow-root
from within the container and following the prompts to access it from the website front-end.
Note that if this node is accessed from an ssh session local ssh port forwarding is required and is achieved with the following:
ssh -N -f -L localhost:8888:localhost:8888 <node-name>