【发布时间】:2021-09-14 07:15:38
【问题描述】:
较新版本的 CMake(3.18 及更高版本)“了解”编译 CUDA 代码目标的 CUDA 架构的选择。目标有一个CUDA_ARCHITECTURES 属性,当设置该属性时,会为您生成适当的-gencode arch=whatever,code=whatever 编译选项。如果您不设置此值,您甚至会收到警告:
CMake Error in CMakeLists.txt:
CUDA_ARCHITECTURES is empty for target "my_cuda_app".
默认情况下,此目标属性初始化为CMAKE_CUDA_ARCHITECTURES。但是CMAKE_CUDA_ARCHITECTURES 本身并没有初始化为任何东西(!)
我们如何让 CMake 自动检测 CUDA_ARCHITECTURES 或全局 CMAKD_CUDA_ARCHITECTURES 的适当值?也就是使用系统上安装的GPU的架构?
【问题讨论】:
标签: cmake cuda nvidia build-automation compute-capability