Build Updates, main branch (2026.04.07.)#1134
Build Updates, main branch (2026.04.07.)#1134krasznaa wants to merge 3 commits intoacts-project:mainfrom
Conversation
| "name" : "cuda", | ||
| "displayName" : "CUDA Developer Configuration", | ||
| "inherits" : [ "default-fp32" ], | ||
| "inherits" : [ "dev-fp32" ], |
There was a problem hiding this comment.
Is it possible to have it inherit from the full build preset instead of modifying the dev preset? The dev preset is, in fact, not meant to turn on any of the builds by default...
The additional algebra plugins will also not do anything CUDA related and only slow the build down, so they should remain turned off for the CUDA build.
There was a problem hiding this comment.
Not sure why you're worried about modifying the dev preset. 😕 Are you using it in your own private builds?
The presets to me personally are mainly there to make development life easier. So that I could build the project in a terminal, or in an IDE, as conveniently as possible. Using these in the CI is a nice added benefit. But if we need to write a long configuration command into the CI setup, that doesn't bother me too much. What bothers me is writing those long configuration commands into a terminal while working on the code. 🤔
With that said, the CI only uses the following presets at the moment:
- The GitLab CI uses the aptly named
gitlab-cuda-ciandgitlab-sycl-cipresets. (https://github.com/acts-project/detray/blob/main/.gitlab-ci.yml) These ones I didn't modify. - The GitHub CI only uses the
full-fp32andfull-fp64presets. (https://github.com/acts-project/detray/blob/main/.github/workflows/builds.yml) These should still work as they do now. Even though their code did get modified.
So again: Are you using the dev presets yourself? Because if not, the settings proposed in this PR make a lot more sense for the way that I build this code for my own purposes. 🤔
There was a problem hiding this comment.
I very rarely build all of detray when I develop, so I don't prefer to add a lot of configurations to turn everything off again. For people who like to build all of it, there is the full preset.
There was a problem hiding this comment.
In case you need an intermediate way, we can also add a new preset
The device presets were not building anything other than vecmem before these updates.
Using the same code that we use in traccc as well.
87f18b1 to
7f67f1c
Compare
|



I found that I need to make a change in the code to keep traccc building successfully with a Clang+CUDA compiler combination.
But before I could make the fix itself, I found that I needed to clean up the CMake configuration of the code a little.
-src-in-ptxwhen using an appropriate version of CUDA. Like we do in traccc.cudapreset for instance doesn't build any part of the project.I tried to make sure that the CI builds/tests would continue doing what they are currently doing. 🤞