Benchmark Results
Automated test suite performance tracking for Windows platform.
Desktop charts (no GitHub Pages needed): docs/desktop/README.md
Interactive charts grouped by scenario (community, wallet, swap). Updated nightly by Jenkins.
System info (desktop)
Nightly Jenkins runs collect Windows host metadata and pass it to benchmark.py parse via --machine-info. The dashboard System info block reads from data/run_environment.csv.
powershell -File scripts/collect_machine_info.ps1 -OutputPath machine_info.json
python scripts/benchmark.py parse <dir> `
--run-id nightly-<commit>-<build> `
--channel nightly `
--commit-hash <hash> `
--date <iso-date> `
--machine-info machine_info.json
See scripts/machine_info.example.json for the JSON shape. Wired in status-app/scripts/push_benchmark.sh.
Channels
Nightly, pull-request, and release results are stored separately and never mixed:
- nightly →
data/ - PR →
data/desktop/pr/<number>/ - release →
data/desktop/releases/<series>/(for example2.39)
The manual Jenkins job (status-app/e2e/manual-benchmark-windows) publishes PR and RC runs. It does not promote a final release into the nightly baseline.
Promote a final release baseline
After a fully passed final build (for example 2.39.0, not an RC) is published, promote that run once by hand. Look up run_id in data/desktop/releases/2.39/runs.csv, then:
python scripts/benchmark.py promote-baseline --release-data-dir data/desktop/releases/2.39 --run-id <run_id>
python scripts/benchmark.py graphs --data-dir data --output-dir docs/desktop/nightly --channel nightly --baseline-dir data/desktop/baselines
An RC cannot be promoted. Each release series can be promoted only once.
Adding new tests
How to add a new performance test
[[tests]]
test_id = "test_my_feature"
display_name = "My Feature Loading Time Performance"
graph_filename = "my_feature_loading_time.png"
pattern = "test_my_feature"
ylabel = "Load Time (s)"
- Add the test to a scenario page (or create a new one):
[[pages]]
slug = "my-feature"
title = "My Feature"
description = "Short description shown on the dashboard."
test_ids = ["test_my_feature"]
Android benchmarks
See docs/android/README.md for mobile navigation response time charts.
Raw CSV history: data/