Profiling Dashboardยถ
๐ Profiling Dashboard
Loading profiling history...
How it Worksยถ
Main Branch Profiling (Historical Data)
When a PR is merged to the main branch, the profiling workflow automatically:
Runs the profiling tests on the updated code
Collects performance metrics (function calls, durations, etc.)
Stores the results in the
profiling_databranch for long-term storageThe dashboard above fetches this historical data to show performance trends
PR Profiling (Open PRs)
For open pull requests, the PR profiling workflow:
Runs profiling tests on the PR branch
Uploads artifacts with the profiling results
The dashboard can show the status and artifacts for each open PR
Profiling Triggers
The profiling workflows are triggered when changes are made to:
src/**- Source code changestests/profiling/**- Profiling test changespyproject.toml- Project configurationpixi.lock- Dependency lock file
Data Storageยถ
Profiling data is stored in the profiling_data branch of this repository. This provides:
Persistent storage: Data survives across workflow runs
Version control: Full history of profiling data changes
Easy access: Data can be fetched via GitHubโs raw content API
The history is limited to the last 100 merged commits to prevent unbounded growth.
Interpreting Resultsยถ
Performance Change Indicators:
๐ข Green: Performance improved by more than 5%
โช White: Performance change within ยฑ5% (stable)
๐ด Red: Performance regressed by more than 5%
Metrics Tracked:
Total Duration: Sum of all profiled function durations
Total Calls: Number of function calls tracked
Per-test breakdown: Detailed timing for each profiling test