A performance tracker for XiangShan
After XiangShan#5635, we have uploaded all IPC data generated by Performance Test CI to GitHub artifacts. So external scripts can fetch the data easily.
This repo is inspired by Verilator RTLMeter, and utilizes artifacts mentioned above.
This use a GitHub Action to fetch data daily and commit .json files to this repo. The frontend is built with Vue 3 + TypeScript + Chart.js.
Go to https://ngc7331.github.io/XiangShan-Dashboard/ to use the dashboard.
Install dependencies and run development server:
npm install
npm run devBuild for production:
npm run buildData is separated by domain under data:
data/
test/ # Performance Test workflow
branch.json
<branch>/
data.json
<commit>.json
Schema constraints:
branch.json: list of branch name strings.data.json:{ "data": { run_id: { "hash", "title", "date" } } }.<commit>.json/<date>.json:{ benchmark: { metric } }.run_id: numeric string.metrickey:ipcorscore.metricvalue: float number.
95% of the frontend code is generated by GitHub Copilot with GPT-5.1-Codex-Max/GPT-5.3-Codex model.