Skip to content

ci: Reduce unnecessary builds and compiler-cache pressure - #6086

Merged
andiwand merged 4 commits into
acts-project:mainfrom
paulgessinger:ci/reduce-build-overhead
Sep 18, 2026
Merged

andiwand merged 4 commits into
acts-project:mainfrom
paulgessinger:ci/reduce-build-overhead

Conversation

@paulgessinger

@paulgessinger paulgessinger commented Sep 15, 2026

Copy link
Copy Markdown
Member

Merge-group runs currently build Detray and Traccc even for unrelated changes, while SHA-keyed main compiler caches accumulate full snapshots against the shared 10 GB budget. This change reduces unnecessary builds and cache pressure, and speeds up the unused-file check.

@paulgessinger

Copy link
Copy Markdown
Member Author

Additional information:

Changes

  • Add merge-group changes jobs for Detray and Traccc using the existing path-filter pattern. Conservative filters include shared build inputs and Traccc's ACTS dependencies; existing PR/push filtering and job names are preserved.
  • Retain the newest non-empty main compiler-cache archive per build variant and cache format after trusted main workflows complete. Recheck the replacement before deleting older archive IDs. PR and dependency caches are excluded; manual runs default to dry-run.
  • Pass CCACHE_MAXSIZE into Linux wheel containers so their existing 500 MB limit takes effect instead of the 5 GB container default. Increase the Ubuntu FPE build's local cache from 500 MB to 1 GB after observing repeated cleanups during compilation.
  • Use direct quiet grep in the unused-file checker to stop after the first match and avoid shell invocation and unnecessary output collection. Add regression checks to the CI self-tests.

Validation

  • 12 Python regression tests passed, covering retention boundaries, replacement disappearance, API failures, wheel environment propagation, and unused-file matching/error handling.
  • 28 path-filter cases and 14 gate status/cancellation cases passed.
  • Actionlint passed with the existing optional Traccc compiler-matrix diagnostic excluded; zizmor 1.29.0, Black, Bash syntax, and whitespace checks passed.
  • Full GNU/Linux unused-file benchmark: 206.880 s before, 40.484 s after (5.11x faster), with identical diagnostics and successful exit status.
  • Live read-only cache dry run selected eight superseded archives totalling 3,588,771,767 bytes. No caches were deleted during development.

The retention workflow becomes active on main. It reduces storage pressure but does not impose an aggregate hard cap or prevent temporary pressure while new archives upload. End-to-end GitHub workflow validation is pending.

@paulgessinger
paulgessinger marked this pull request as ready for review September 15, 2026 10:39
@github-actions

github-actions Bot commented Sep 15, 2026

Copy link
Copy Markdown
Contributor

📊: Physics performance monitoring for 5383248

Full contents

physmon summary

@github-actions github-actions Bot added the Infrastructure Changes to build tools, continous integration, ... label Sep 15, 2026
@github-actions github-actions Bot added this to the next milestone Sep 15, 2026
@paulgessinger paulgessinger modified the milestone: next Sep 15, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Public API surface diff

No change to the public API surface. ✅

@paulgessinger
paulgessinger force-pushed the ci/reduce-build-overhead branch from 15241c5 to b65c6f7 Compare September 16, 2026 11:49
andiwand
andiwand previously approved these changes Sep 17, 2026
Comment thread .github/detray-traccc-filters.yml
@acts-policybot
acts-policybot Bot dismissed andiwand’s stale review September 17, 2026 13:53

Invalidated by push of 5383248

@andiwand
andiwand enabled auto-merge September 17, 2026 14:05
@sonarqubecloud

Copy link
Copy Markdown

@andiwand
andiwand added this pull request to the merge queue Sep 18, 2026
@andiwand
andiwand removed this pull request from the merge queue due to a manual request Sep 18, 2026
@andiwand
andiwand merged commit 774c814 into acts-project:main Sep 18, 2026
61 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Infrastructure Changes to build tools, continous integration, ...

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants