2025-03-14 21:59:59 -06:00
|
|
|
# hyperfine
|
|
|
|
|
|
|
|
|
|
> A command-line benchmarking tool.
|
|
|
|
|
> More information: <https://github.com/sharkdp/hyperfine/>.
|
|
|
|
|
|
|
|
|
|
- Run a basic benchmark, performing at least 10 runs:
|
|
|
|
|
|
|
|
|
|
`hyperfine '{{make}}'`
|
|
|
|
|
|
|
|
|
|
- Run a comparative benchmark:
|
|
|
|
|
|
|
|
|
|
`hyperfine '{{make target1}}' '{{make target2}}'`
|
|
|
|
|
|
|
|
|
|
- Change minimum number of benchmarking runs:
|
|
|
|
|
|
2025-05-08 12:26:01 -06:00
|
|
|
`hyperfine {{[-m|--min-runs]}} {{7}} '{{make}}'`
|
2025-03-14 21:59:59 -06:00
|
|
|
|
|
|
|
|
- Perform benchmark with warmup:
|
|
|
|
|
|
2025-05-08 12:26:01 -06:00
|
|
|
`hyperfine {{[-w|--warmup]}} {{5}} '{{make}}'`
|
2025-03-14 21:59:59 -06:00
|
|
|
|
|
|
|
|
- Run a command before each benchmark run (to clear caches, etc.):
|
|
|
|
|
|
2025-05-08 12:26:01 -06:00
|
|
|
`hyperfine {{[-p|--prepare]}} '{{make clean}}' '{{make}}'`
|
2025-03-14 21:59:59 -06:00
|
|
|
|
|
|
|
|
- Run a benchmark where a single parameter changes for each run:
|
|
|
|
|
|
2025-05-08 12:26:01 -06:00
|
|
|
`hyperfine {{[-p|--prepare]}} '{{make clean}}' {{[-P|--parameter-scan]}} {{num_threads}} {{1}} {{10}} '{{make {{[-j|--jobs]}} {num_threads}}}'`
|