Summary
A bench.rs file exists in nxpu-e2e-tests but there is no CI integration to track performance over time or detect regressions.
Motivation
- Optimization passes and backend changes can silently degrade compile-time performance
- Without baseline tracking, regressions go unnoticed until users report slowness
- Automated benchmark comparison on PRs catches issues early
Proposed Approach
- Benchmark framework: Migrate to criterion.rs for statistical benchmarking
- CI integration options:
- bencher.dev — Free for open-source, GitHub integration
- github-action-benchmark — Stores results in
gh-pages branch
- Custom: store baseline in artifacts, compare with
critcmp
- Benchmark targets:
- Parse time (each example WGSL file)
- Optimization pass time (per pass and total pipeline)
- Backend emit time (per backend)
- End-to-end compile time (WGSL → output format)
Acceptance Criteria
Summary
A
bench.rsfile exists innxpu-e2e-testsbut there is no CI integration to track performance over time or detect regressions.Motivation
Proposed Approach
gh-pagesbranchcritcmpAcceptance Criteria