cockroachdb / cockroach

CockroachDB — the cloud native, distributed SQL database designed for high availability, effortless scale, and control over data placement.
https://www.cockroachlabs.com
Other
29.87k stars 3.77k forks source link

microbenchmarks: dashboards #128888

Open herkolategan opened 1 month ago

herkolategan commented 1 month ago

After the implementation of [1] (pushing microbenchmark data to InfluxDB) it should be possible to tailor [2] & [3] (the Golang microbenchmark dashboard app source) to display our weekly microbenchmark runs. Currently, this version of the dashboard app does not support packages. It also does not support regex filtering of the microbenchmarks. These will likely be required features as the cockroach microbenchmark suite is quite large, and has a few duplicate microbenchmark names if packages are not considered.

The repository containing the dashboard app [3] is part of Golang's build repo. This means much of the repo is not required, and we can strip away the parts we will require to run our own dashboard. The perf and perfdata directories contain the bulk of the code related to the dashboards, but it does reference a few dependencies in the repo outside of those directories. We likely also won't need perfdata which serves as a type of data storage interface for the microbenchmark raw logs, and indexes those using a SQL database. Our performance data is simple enough to store directly to GCS in case we need to reprocess or reference it.

This issue should also consider the required infrastructure to run InfluxDB, and a host for the dashboards app. So that it can be made available to the wider org.

[1] #128886 [2] perf.golang.org/dashboard [3] https://github.com/golang/build/tree/master

Jira issue: CRDB-41259

blathers-crl[bot] commented 1 month ago

cc @cockroachdb/test-eng