20 lines
398 B
Bash
20 lines
398 B
Bash
|
#!/bin/zsh
|
||
|
local bench="$1"
|
||
|
local against="$2"
|
||
|
local i x n=0 t m=9999
|
||
|
finish() {
|
||
|
[ $n -gt 0 ] && printf "\nmin %.3f avg %.3f total %.3f\n" $m $((x/n)) $x
|
||
|
exit 0
|
||
|
}
|
||
|
trap finish INT
|
||
|
echo -n "…"
|
||
|
for ((i=0; i<8; i++)); do
|
||
|
sleep 0.5
|
||
|
t="$(TIMEFMT='%*E'$'\n'; (time "$bench" "$against") 2>&1)"
|
||
|
echo -n " ${t}"
|
||
|
let 'x += t'
|
||
|
let 'n += 1'
|
||
|
[[ $t < $m ]] && m=$t
|
||
|
done
|
||
|
finish
|