rapids_cuda_set_architectures

Added in version v21.06.00.

Sets up CMAKE_CUDA_ARCHITECTURES based on the requested mode

rapids_cuda_set_architectures( (NATIVE|RAPIDS) )

Establishes what CUDA architectures that will be compiled for, overriding any existing CMAKE_CUDA_ARCHITECTURES value.

This function should rarely be used, as rapids_cuda_init_architectures() allows for the expected workflow of using CMAKE_CUDA_ARCHITECTURES when configuring a project. If for some reason your project can’t use rapids_cuda_init_architectures() than you can use rapids_cuda_set_architectures() directly.

Note

This is automatically called by rapids_cuda_init_architectures()

NATIVE or "":

When passed as the value for CMAKE_CUDA_ARCHITECTURES or ENV{CUDAARCHS} will compile for all GPU architectures present on the current machine.

RAPIDS, ALL, or no value in CMAKE_CUDA_ARCHITECTURES and ENV{CUDAARCHS}:

When passed as the value for CMAKE_CUDA_ARCHITECTURES or ENV{CUDAARCHS} will compile for all supported RAPIDS GPU architectures.

Result Variables

CMAKE_CUDA_ARCHITECTURES

Will exist as a local variable and be set to the list of architectures that should be compiled for. Will overwrite any existing values.

Added in version v24.08.00: Will be added as a cache variable if it isn’t already one.