blob: cdee968e50f7ddcda837cd18dfc1b65221ffbfa6 [file] [log] [blame] [view]
# Go performance measurement, storage, and analysis tools
This subrepository holds the source for various packages and tools
related to performance measurement, storage, and analysis.
[cmd/benchstat](cmd/benchstat) contains a command-line tool that
computes and compares statistics about benchmarks.
[cmd/benchsave](cmd/benchsave) contains a command-line tool for
publishing benchmark results.
[storage](storage) contains the https://perfdata.golang.org/ benchmark
result storage system.
[analysis](analysis) contains the https://perf.golang.org/ benchmark
result analysis system.
Both storage and analysis can be run locally; the following commands will run
the complete stack on your machine with an in-memory datastore.
```
go get -u golang.org/x/perf/storage/localperfdata
go get -u golang.org/x/perf/analysis/localperf
localperfdata -addr=:8081 -view_url_base=http://localhost:8080/search?q=upload: &
localperf -addr=:8080 -storage=http://localhost:8081
```
The storage system is designed to have a
[standardized API](https://perfdata.golang.org/), and we
encourage additional analysis tools to be written against the API. A
client can be found in the [storage](https://godoc.org/golang.org/x/perf/storage) package.
--
Contributions to Go are appreciated. See http://golang.org/doc/contribute.html.
* Bugs can be filed at the [Go issue tracker](https://golang.org/issue/new?title=x/perf:+).