toolsgolang.org/x/tools/cmd/benchcmp

benchcmp command

Deprecated: benchcmp is deprecated in favor of benchstat: golang.org/x/perf/cmd/benchstat

The benchcmp command displays performance changes between benchmarks.

Benchcmp parses the output of two 'go test' benchmark runs, correlates the results per benchmark, and displays the deltas.

To measure the performance impact of a change, use 'go test' to run benchmarks before and after the change:

go test -run=NONE -bench=. ./... > old.txt
# make changes
go test -run=NONE -bench=. ./... > new.txt

Then feed the benchmark results to benchcmp:

benchcmp old.txt new.txt

Benchcmp will summarize and display the performance changes, in a format like this:

$ benchcmp old.txt new.txt
benchmark           old ns/op     new ns/op     delta
BenchmarkConcat     523           68.6          -86.88%

benchmark           old allocs     new allocs     delta
BenchmarkConcat     3              1              -66.67%

benchmark           old bytes     new bytes     delta
BenchmarkConcat     80            48            -40.00%
Version
v0.30.0 (latest)
Published
Feb 10, 2025
Platform
linux/amd64
Imports
8 packages
Last checked
5 hours ago

Tools for package owners.