第一次使用CUDA编程,本文只提供了我以为的解决方法,原因不清楚,希望以后可以将这篇博客内容补全
环境:ubuntu18.04 clion2020.3 cuda11.2 GPU版本:GEFORCE 940MX
复制粘贴了网上最简单的"Hello, cuda",在kernel函数中输出,结果什么都没有,心态崩了。
总结原因:
1.需要确定自己的GPU计算能力
可以在NVIDIA官网上查询,或者cuda 计算能力查询表
还有一种查看方式,可以运行NVIDIA_CUDA_Samples/1_Utilities/deviceQuery
的代码,运行结果如图
我的CUDA Capability 就是5.0
计算能力2.0以上才可以在kernel函数中输出,参考CUDA官方文档
2.编译时指定CUDA架构
参考CUDA架构及对应编译参数
我的GPU版本为 GEFORCE 904MX,计算能力5.0,因此nvcc编译时选择
nvcc -gencode arch=compute_50,code=sm_50 main.cu
但是还没搞清楚如何在clion中设置编译的参数,先记下来吧。
*之前还遇到了一个小问题
clion编译时报错
No CMAKE_CUDA_COMPILER could be found
在设置里改一下就好啦
就是在CMake options中写入
-DCMAKE_CUDA_COMPILER:PATH=/usr/local/cuda-11.2/bin/nvcc
具体路径要根据自己把nvcc装在哪来确定