My personal, slightly improved version of benchstat utility.
Lets take two benchmarks data (old and new) and compare them using benchstat:
Here is the result from qbenchstat:
The key differences:
- Colored output
- Stricter rules to consider something a significant change
There are other differences too, like fixed geomean for values with zeroes.
The usage is identical to the original benchstat, plus some new flags.
Usage of ./bin/qbenchstat:
-alpha α
consider change significant if p < α (default 0.05)
-delta-test test
significance test to apply to delta: utest, ttest, or none (default "utest")
-geomean
print the geometric mean of each file
-no-color
disable the colored output
-sort order
sort by order: [-]delta, [-]name, none (default "none")
-split labels
split benchmarks by labels (default "pkg,goos,goarch")
The new flags:
no-color
$ go install github.com/msaf1980/qbenchstat/cmd/qbenchstat@latest