docs/performance_dashboard/README.md
A web-based dashboard for visualizing SGLang nightly test performance metrics.
For live data from GitHub Actions artifacts:
# Install requirements
pip install requests
# Run the server
python server.py --fetch-on-start
# Visit http://localhost:8000
The server provides:
/api/metrics endpoint for the frontendUse the fetch script to download metrics data:
# Fetch last 30 days of metrics
python fetch_metrics.py --output metrics_data.json
# Fetch a specific run
python fetch_metrics.py --run-id 21338741812 --output single_run.json
# Fetch only scheduled (nightly) runs
python fetch_metrics.py --scheduled-only --days 7
To download artifacts from GitHub, you need authentication:
Using gh CLI (recommended):
gh auth login
Using environment variable:
export GITHUB_TOKEN=your_token_here
Without a token, the dashboard will show run metadata but not detailed benchmark results.
The metrics JSON has this structure:
{
"run_id": "21338741812",
"run_date": "2026-01-25T22:24:02.090218+00:00",
"commit_sha": "5cdb391...",
"branch": "main",
"results": [
{
"gpu_config": "8-gpu-h200",
"partition": 0,
"model": "deepseek-ai/DeepSeek-V3.1",
"variant": "TP8+MTP",
"benchmarks": [
{
"batch_size": 1,
"input_len": 4096,
"output_len": 512,
"latency_ms": 2400.72,
"input_throughput": 21408.64,
"output_throughput": 231.74,
"overall_throughput": 1919.43,
"ttft_ms": 191.32,
"acc_length": 3.19
}
]
}
]
}
The dashboard can be deployed to GitHub Pages for public access:
docs/performance_dashboard/For a self-hosted deployment with live data:
server.pyTo add support for new metrics or visualizations:
fetch_metrics.py if data collection needs changesapp.js to add new chart types or filtersindex.html for UI changesNo data displayed
server.py --fetch-on-startAPI rate limits
Charts not rendering