Skip to content

Run ThinLTO release smoke tests in parallel - #779

Closed
helly25 wants to merge 1 commit into
mainfrom
ci/split-release-smoke
Closed

Run ThinLTO release smoke tests in parallel#779
helly25 wants to merge 1 commit into
mainfrom
ci/split-release-smoke

Conversation

@helly25

@helly25 helly25 commented Sep 7, 2026

Copy link
Copy Markdown
Collaborator

Default opt tests and ThinLTO release smoke builds now run in parallel instead of serially in the same Linux and macOS jobs. This preserves validation of the exact shipped binaries while aiming to remove the release-build tail from required CI wall time.

AG;DR

Change

  • Keep the complete ordinary test suite in the existing default matrix cells.
  • Move the tagged ThinLTO release tests, lean/full release builds, staging, executable smoke checks, and PR artifact uploads into independent Linux and macOS release smoke jobs.
  • Give release builds their own Bazel disk-cache namespace so incompatible opt and ThinLTO outputs do not contend.
  • Make the aggregate done job require the new release-smoke matrix.

Timing hypothesis

The final PR 777 run serialized these phases:

Platform Default tests ThinLTO release phase Serialized total
Linux 14m32s 6m41s 21m13s
macOS 16m53s 4m08s 21m01s

The split is worthwhile if each new release-smoke cell finishes no later than its matching default-test cell, after accounting for independent setup and cache behavior. This PR's CI run is the acceptance measurement. If that condition does not hold, the next experiment is running the complete suite under ThinLTO and comparing its wall time.

Validation

  • tools/release_prep_test.sh
  • git diff --check origin/main...HEAD
  • pre-commit run --files .github/workflows/main.yml

No test scope or release transformation is removed; only scheduling and cache ownership change.

@helly25

helly25 commented Sep 7, 2026

Copy link
Copy Markdown
Collaborator Author

Superseded by #780 after timing showed that one complete production ThinLTO test build has comparable wall time, substantially lower runner cost, and avoids configuration drift.

@helly25 helly25 closed this Sep 7, 2026
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.

1 participant