Repository navigation
Conversation
CUDA compiler discovery starts a separate CMake configuration even when neither CUDA feature is requested. This can add substantial overhead on slow I/O and NFS-backed filesystems. Only discover CUDA for explicit requests or when all needs availability information to select defaults. Preserve explicit OFF settings and gminimal defaults, and cover these combinations with regression tests. Assisted-by: Codex:GPT-6
Member
|
@guitargeek btw, with the plan of externalising SOFIE, do we still need the tmva-gpu option? |
Contributor
|
The |
Test Results 24 files 24 suites 3d 22h 57m 24s ⏱️ Results for commit 5c67c72. |
Member
|
Thanks. Agreed then! |
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This Pull request:
Avoids CUDA compiler discovery and language initialization when no CUDA features are requested.
Changes or fixes:
ROOT currently calls
check_language(CUDA)on every configure, even whencudaandtmva-gpuare disabled. The probe starts a separate CMake configuration and accesses compiler and toolkit files. Looking for CUDA can therefore be an expensive operation in slow I/O environments and on NFS-backed filesystems, adding avoidable configuration time.Only probe when
cudaortmva-gpuis explicitly enabled, or whenallcould enable an unspecified CUDA option. Preserve explicit OFF settings and the defaults selected bygminimal.Add 13 regression cases covering default and explicit settings, cached compiler information,
all, minimal configurations, and unavailable CUDA. Compiler discovery is mocked so these tests do not require a CUDA installation.AI assistance: Codex (GPT-6) reviewed the change, ran validation, and prepared the commit and PR description.
Checklist:
No documentation changes are needed. No associated issue.