Skip to content

feat: add CodSpeed continuous benchmarking integration#10

Open
coco-speed wants to merge 1 commit intomainfrom
codspeed-wizard-00489
Open

feat: add CodSpeed continuous benchmarking integration#10
coco-speed wants to merge 1 commit intomainfrom
codspeed-wizard-00489

Conversation

@coco-speed
Copy link
Copy Markdown

Summary

This PR integrates CodSpeed continuous benchmarking platform to provide accurate, reproducible performance measurements for the constraint solver benchmarks.

Changes Made

  • Dependency Update: Replaced criterion with codspeed-criterion-compat in kcl-ezpz/Cargo.toml to enable CodSpeed integration while maintaining existing benchmark API
  • CI/CD Integration: Added .github/workflows/codspeed.yml with GitHub Actions workflow for automated benchmark execution
  • Tokenless Setup: Configured CodSpeed to run without requiring a token for initial testing

Existing Benchmarks Preserved

All existing benchmarks will continue to work without modification:

  • solve_tiny - Basic constraint solving
  • solve_two_rectangles - Rectangle constraint benchmarks
  • solve_angle_parallel - Angular constraint solving
  • solve_perpendicular - Perpendicular constraint tests
  • solve_massive - Large-scale parallel system benchmarks
  • solve_massive_overconstrained - Overconstrained system tests

Next Steps

  1. Merge this PR to enable CodSpeed integration
  2. The CI workflow will automatically run benchmarks on future PRs
  3. Visit CodSpeed dashboard to view detailed performance reports
  4. Optionally configure CODSPEED_TOKEN secret in repository settings for enhanced reporting features

Technical Details

CodSpeed uses specialized instrumentation to eliminate environmental noise and provide reliable performance measurements in CI environments, unlike traditional statistical approaches.

The integration maintains full compatibility with existing Criterion.rs benchmark code while providing enhanced measurement accuracy.

- Replace criterion with codspeed-criterion-compat for accurate performance measurements
- Add GitHub Actions workflow for automated benchmark execution
- Enable CodSpeed reporting for performance regression detection

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants