Command for running benchmark test:
hyperfine --setup 'cargo build --release' --max-runs 3 --export-json time.json --parameter-list threads 1,2,4,8,16 'cargo run --release -- --threads={threads}'
Hyperfine does not (yet?) support adding some kind of identification to distinguish multiple runes.
For that reason this can (optionally) be inserted manually into the JSON file.
At top-level insert the following snippet, while replacing <identification>
, e.g. using a git commit SHA1.
"env": {
"id": "<identification>"
},
Bokeh
is required and can be installed using pip
pip install -r requirements.txt
./plot.py <JSON file>