Skip to content

Migrate performance benchmarks to Bazel#60

Draft
realityforge wants to merge 1 commit into
masterfrom
codex/bazel-performance-benchmarks
Draft

Migrate performance benchmarks to Bazel#60
realityforge wants to merge 1 commit into
masterfrom
codex/bazel-performance-benchmarks

Conversation

@realityforge

Copy link
Copy Markdown
Collaborator

Summary

  • Add a Bazel-backed performance benchmark runner for build-time, code-size, and table-rendering workflows.
  • Migrate historical benchmark data into per-version comparison directories under performance-benchmarks/data.
  • Update the existing Rake performance tasks and release validation to invoke the Bazel runner.
  • Include the new benchmark tests in the root Bazel test suite.

Validation

  • bazel run //:buildifier_check
  • bazel test //:all_tests
  • bazel run //performance-benchmarks:benchmark -- --mode=build-times --variant=tiny --warmup-seconds=0 --trials=1 --output-dir=tmp/perf-smoke --sting-version=0.0-smoke --dagger-version=2.25.2
  • bazel run //performance-benchmarks:benchmark -- --mode=code-size --variant=tiny --output-dir=tmp/perf-smoke --sting-version=0.0-smoke --dagger-version=2.25.2
  • bundle exec buildr update_build_time_statistics PERF_SMOKE=true PRODUCT_VERSION=0.0-smoke
  • bundle exec buildr update_code_size_statistics PERF_SMOKE=true PRODUCT_VERSION=0.0-smoke
  • ruby -c tasks/perf.rake
  • ruby -c tasks/release.rake

Notes

The old Buildr performance-tests module is intentionally still present while the full all-variant manual benchmark run is investigated. The default code-size run does not emit debug archives; archives are available through the explicit archive option for debugging.

Add a Bazel-backed performance benchmark runner for build-time, code-size, and table-rendering workflows. The new runner supports reduced smoke runs, migrated per-comparison data files, schema validation, and opt-in code-size debug archive output.

Update the existing Rake task names to invoke the Bazel runner, add release validation for the new data layout, and include the benchmark test suite in the root Bazel tests. The old Buildr performance-tests module remains in place while the full all-variant manual validation gate is investigated.
@realityforge realityforge changed the title [codex] Migrate performance benchmarks to Bazel Migrate performance benchmarks to Bazel Jul 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

1 participant