[FEA]: Add SM90 to architecture list for CI
- Dominant language
- C++
- Stars
- 2.5k
- Forks
- 486
- Avg merge
- 2d 6h
- Merged PRs (30d)
- 295
Description
### Is this a duplicate?
- [X] I confirmed there appear to be no [duplicate issues](https://github.com/NVIDIA/cccl/issues) for this request and that I agree to the [Code of Conduct](CODE_OF_CONDUCT.md)
### Area
Infrastructure
### Is your feature request related to a problem? Please describe.
As a user and maintainer of CCCL, I want to be sure that CCCL works when compiled and run for SM90 (Hopper). However, CCCL's CI does not currently compile (or run) for SM90.
There are a number of things that complicate simply adding SM90 to the architecture list:
- Compiling RDC tests in Thrust/CUB break for SM90 today: https://github.com/NVIDIA/cccl/issues/219
- The CUDA architecture list is [hard-coded in the CMake preset](https://github.com/NVIDIA/cccl/blob/main/CMakePresets.json#L16) and there's no longer a way to customize the GPU architectures in the [CI matrix](https://github.com/NVIDIA/cccl/blob/7395463758994ff95f2d583fb7d537fbbbf1c262/ci/matrix.yaml#L28-L51). This functionality used to exist, but was removed with the addition the CMake preset.
- Simply adding SM90 to the build list will still not exercise compiling (or running) SM90 specific tests in libcudacxx due to the [current design of libcudacxx's testing infrastructure](https://github.com/NVIDIA/cccl/issues/1084)
### Describe the solution you'd like
### Tasks
- [x] Enable specifying CUDA architecture per CI job
- [ ] https://github.com/NVIDIA/cccl/issues/1137
- [ ] https://github.com/NVIDIA/cccl/issues/219
- [ ] https://github.com/NVIDIA/cccl/issues/1084
### Describe alternatives you've considered
_No response_
### Additional context
_No response_
Contributor guide
Assessment
This issue has not been assessed yet.