-
Notifications
You must be signed in to change notification settings - Fork 5
ci: introduce benchmarks for CI #1016
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces a CI workflow for running benchmarks on Rust code changes. The workflow compares benchmark results between the PR branch and the master branch to detect performance regressions.
- Adds a GitHub Actions workflow that triggers on labeled PRs and pushes to master
- Introduces a new binary utility for converting benchmark data formats
- Configures the workflow to compare performance and comment on PRs with results
Reviewed Changes
Copilot reviewed 2 out of 3 changed files in this pull request and generated 4 comments.
| File | Description |
|---|---|
| benchmarks/Cargo.toml | Adds a new binary target for benchmark data conversion |
| .github/workflows/bench.yml | Implements the complete benchmark CI workflow with comparison logic |
|
Test comment from GitHub Actions |
|
github benchamarks action doesn't work with custom benches adjusting solution to do not working steps on our own |
🔬 Benchmark Comparison
Legend
🤖 This comment was automatically generated by the benchmark comparison workflow at dc4fbac. |
1 similar comment
🔬 Benchmark Comparison
Legend
🤖 This comment was automatically generated by the benchmark comparison workflow at dc4fbac. |
🔬 Benchmark Comparison
Legend
🤖 This comment was automatically generated by the benchmark comparison workflow at 6eb6ebc. |
🔬 Benchmark Comparison
Legend
🤖 This comment was automatically generated by the benchmark comparison workflow at 2be57a7. |
1 similar comment
🔬 Benchmark Comparison
Legend
🤖 This comment was automatically generated by the benchmark comparison workflow at 2be57a7. |
This PR introduces:
run-benchmarkslabel is set in a PR and specific paths were changed (rs/,benchmarks/,examples/,Cargo.*, and the job config). Also in case the PR is pushed tomaster, the bench will run.bench-analyzerscripts which reads 2 files with bench data and prints a table with bench statistics. Optionally returned table can be set to the file. Also in casethresholdis introduced, if any bench doesn't pass threshold (i.e. current bench differs from the other by threshold value) the script ends with an error