NVIDIA / NVIDIA/cccl

[FEA]: CUB/Thrust builds should support the `native` option for `CMAKE_CUDA_ARCHITECTURES`

Open
#278 3 comments 0 reactions 0 assignees View on GitHub
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

CUB

### Is your feature request related to a problem? Please describe.

I would like to be able to build CUB/Thrust tests using the automatic architecture detection provided by `CMAKE_CUDA_ARCHITECTURES=native`.

Attempting to use this option yields the following error:
```
CMake Error at cub/cmake/CubCudaConfig.cmake:12 (message):
The CUB dev build requires an explicit list of architectures in
CMAKE_CUDA_ARCHITECTURES. The convenience flags of 'all', 'all-major', and
'native' are not supported.
```

Which originates from here: https://github.com/NVIDIA/cccl/blob/172724839bd0e48ff812bb3293aa1cfc9be45b52/cub/cmake/CubCudaConfig.cmake#L7-L16

### Describe the solution you'd like

We should enable compiling with `CMAKE_CUDA_ARCHITECTURES=native` to work as expected.

### Describe alternatives you've considered

_No response_

### Additional context

_No response_

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.