Performance analysis system

This package contains the benchmark result analysis system. It serves as a front-end to the benchmark result storage system at

The storage system is designed to have a standardized REST API at, and we encourage additional analysis tools to be written against the API. An example client can be found in the perfdata package.


Both storage and analysis can be run locally; the following commands will run the complete stack on your machine with an in-memory datastore.

To run the storage system:

$ go install
$ localperfdata -addr=:8081 -view_url_base=http://localhost:8080/search?q=upload: &

To run the analysis frontend:

$ make docker-prod
$ docker run --rm --net=host -listen-http=:8080 -perfdata=http://localhost:8081

Browse to https://localhost:8080 (note that the instance uses a self-signed certificate).

Google Cloud

One-time setup:

  1. IAM setup, based on

a. Create GCP service account:

$ gcloud iam service-accounts create perf-prod \

c. Allow Kubernetes service account (created by deployment-prod.yaml) to impersonate the GCP service account:

$ gcloud iam service-accounts add-iam-policy-binding \
    perf-prod@<PROJECT> \
    --role roles/iam.workloadIdentityUser \
    --member "serviceAccount:<PROJECT>[prod/perf-prod]"