HYPERFINE(1) General Commands Manual HYPERFINE(1) (NAME) hyperfine - (SYNOPSIS) hyperfine [-ihVN] [--warmup NUM] [--min-runs NUM] [--max-runs NUM] [--runs NUM] [--setup CMD] [--prepare CMD] [--conclude CMD] [--cleanup CMD] [--parameter-scan VAR MIN MAX] [--parameter-step-size DELTA] [--parameter-list VAR VALUES] [--shell SHELL] [--style TYPE] [--sort METHOD] [--time-unit UNIT] [--export-asciidoc FILE] [--export-csv FILE] [--export-json FILE] [--export-markdown FILE] [--export-orgmode FILE] [--output WHERE] [--input WHERE] [--command-name NAME] [COMMAND...] (DESCRIPTION) () : * * (shell) * * (warmup) * * * : CSV JSON Markdown AsciiDoc * ( ) -w, --warmup NUM NUM . () / (I/O) . -m, --min-runs NUM NUM . : 10. -M, --max-runs NUM NUM . . -r, --runs NUM NUM . hyperfine . -s, --setup CMD... CMD . --prepare . -p, --prepare CMD... CMD . . --prepare . . --conclude CMD... CMD . . --conclude . . -c, --cleanup CMD... CMD . . --conclude . -P, --parameter-scan VAR MIN MAX MIN..MAX. '{VAR}' . : hyperfine -P threads 1 8 'make -j {threads}' 'make -j 1' 'make -j 2' ... 'make -j 8' . . : hyperfine -P size 0 3 'sleep $((2**{size}))' : 'sleep 1' 'sleep 2' 'sleep 4' ... . -D, --parameter-step-size DELTA --parameter-scan . MIN..MAX DELTA. : hyperfine -P delay 0.3 0.7 -D 0.2 'sleep {delay}' 'sleep 0.3' 'sleep 0.5' 'sleep 0.7' . -L, --parameter-list VAR VALUES VALUES. '{VAR}' . : hyperfine -L compiler gcc,clang '{compiler} -O2 main.cpp' 'gcc -O2 main.cpp' 'clang -O2 main.cpp' . . -S, --shell SHELL . "bash --norc". "default" . "none" . . "sleep 0.1; sleep 0.2" . -N '--shell=none'. -i, --ignore-failure . --style TYPE TYPE (: auto). 'basic' . 'full' . 'nocolor' . 'color' . 'none' . --sort METHOD (Markdown AsciiDoc org-mode): auto () ( ) . command mean-time -u, --time-unit UNIT . : microsecond millisecond second. . CSV JSON . --export-asciidoc FILE AsciiDoc FILE . --time-unit . --export-csv FILE CSV FILE . JSON . . --export-json FILE JSON FILE . . --export-markdown FILE Markdown FILE . --time-unit . --export-orgmode FILE.IP org-mode FILE . --time-unit . --show-output stdout stderr . . --output WHERE . 'grep' /dev/null . --output=pipe . WHERE : null /dev/null (). pipe pipe . inherit ( '--show-output'). . . : $HYPERFINE_ITERATION : 'my-command > output-${HYPERFINE_ITERATION}.log' --input WHERE . WHERE : null /dev/null (). . -n, --command-name NAME NAME . . -h, --help -V, --version (EXAMPLES) 'find . -name todo.txt': hyperfine 'find . -name todo.txt' 'sleep 0.2' 'sleep 3.2' : hyperfine --min-runs 5 'sleep 0.2' 'sleep 3.2' 'grep' : hyperfine --warmup 3 'grep -R TODO *' markdown: hyperfine --export-markdown output.md --parameter-scan time 1 5 'sleep {time}' --setup --prepare --conclude cmd --cleanup : hyperfine -L n 1,2 -r 2 --show-output \ --setup 'echo setup n={n}' \ --prepare 'echo prepare={n}' \ --conclude 'echo conclude={n}' \ --cleanup 'echo cleanup n={n}' \ 'echo command n={n}' David Peter GitHub : https://github.com/sharkdp/hyperfine HYPERFINE(1)