我正在使用带有GTX Titan卡的计算机上使用CUDA 6.5(计算能力3.5)。我只使用-gencode=arch=compute_30,code=sm_30 -gencode=arch=compute_35,code=sm_35
构建代码 - 当我链接我的二进制文件时,nvlink说:
nvlink warning : SM Arch ('sm_20') not found in '/local/eyalroz/src/foo/CMakeFiles/tester.dir/src/./tester_generated_main.cu.o'
为什么要警告我这件事?对于我不知道的事情,我需要sm_20
吗?如果仅仅是缺乏较低的计算能力支持,为什么不sm_10
呢? (另外,如果是无偿的话,如何关闭警告?)
答案 0 :(得分:3)
该问题已在CUDA 6.5中确定,并已得到纠正我相信CUDA 7.5。使用最新版本的CUDA会使这些警告消失。
答案 1 :(得分:1)
忽略它
我在cuda RC8上遇到了同样的问题:
nvlink警告:在' cudainfo.o'
中找不到SM Arch(' sm_20')编译: / usr / local / cuda / bin / nvcc -g -O2 -Iyes / include -Iyes / include -I。 -gencode arch = compute_35,code = sm_35 -rdc = true --ptxas-options = -v -I./compat/jansson -o cudainfo.o -c cudainfo.cu
$ nvcc --version nvcc:NVIDIA(R)Cuda编译器驱动程序 版权所有(c)2005-2016 NVIDIA Corporation 建于Wed_May__4_21:01:56_CDT_2016 Cuda编译工具,8.0版,V8.0.26