This directory contains GitHub Actions workflows for continuous integration and performance monitoring.
Triggers: Pull requests, pushes to main/master, manual dispatch
Jobs:
benchmark: Runs all benchmarks and uploads resultsbenchmark-comparison: Compares PR performance against base branch
Features:
- Automatic benchmark execution on PRs
- Performance comparison comments
- Artifact uploads for detailed analysis
- Alert on >10% performance regression
Triggers: Pushes to main/master, weekly schedule (Monday 00:00 UTC), manual dispatch
Jobs:
track-performance: Records performance metrics over timeregression-check: Detects regressions between commits
Features:
- Historical performance tracking
- Automatic regression detection
- Performance trends generation
- Weekly scheduled runs for stability monitoring
Triggers: Pushes to main/master, manual dispatch
Jobs:
generate-dashboard: Creates and deploys performance dashboard
Features:
- Visual performance dashboard
- Real-time metrics display
- GitHub Pages deployment
- Criterion HTML report integration
# Run benchmarks locally
.\scripts\benchmark-local.ps1
# Compare with baseline
.\scripts\benchmark-local.ps1 -Compare -Baseline main
# Save new baseline
.\scripts\benchmark-local.ps1 -Save my-baseline
# Quick run (infrastructure only)
.\scripts\benchmark-local.ps1 -Quick- PR Comments: Automatic comments on PRs with benchmark results
- Artifacts: Download detailed results from GitHub Actions artifacts
- Dashboard: View live dashboard at
https://<org>.github.io/<repo>/ - Criterion Reports: HTML reports in artifacts under
benchmark-results
| Metric | Target | Current | Status |
|---|---|---|---|
| State Read | < 15ns | 11.5ns | β |
| State Write | < 15ns | 10.7ns | β |
| Vec Creation | < 100ns | 56ns | β |
| Arc Access | < 10ns | 0.2ns | β |
| Lock Acquisition | < 15ns | 12ns | β |
- Warning: >5% performance decrease
- Alert: >10% performance decrease
- Fail: Configurable per workflow
- PR comment with details
- Artifact upload with comparison
- Optional workflow failure
- Notification to maintainers
Performance-related files are automatically reviewed by maintainers:
/benches/*benchmark*.md*performance*.md*optimization*.md.github/workflows/benchmark*.yml.github/workflows/performance*.yml
- Go to repository Settings
- Navigate to Pages
- Source: Deploy from branch
- Branch:
gh-pages - Folder:
/ (root) - Save
No additional secrets required beyond GITHUB_TOKEN (automatically provided).
benchmark-action/github-action-benchmark:
- Adjust
alert-thresholdinbenchmark.yml - Modify
fail-on-alertbehavior - Configure auto-push settings
- OPTIMIZATION_GUIDE.md - Optimization patterns
- BENCHMARK_SUMMARY.md - Benchmark overview
- README_BENCHMARKS.md - Quick reference
When making changes that may affect performance:
- Run benchmarks locally first
- Compare against main branch
- Document intentional regressions
- Update performance targets if needed
For questions about CI/CD or benchmarking:
- Check workflow logs in Actions tab
- Review documentation in
/docs - Open an issue for CI-specific problems
Last Updated: December 29, 2025 Workflows: 3 active Status: β Operational