我如何学习设备的最大计算能力,我可以使用编译器从给定版本的CUDA工具包中编译代码?
假设我有cuda6.5
工具包。 nvcc是否可以编译GTX GeForce 970(计算能力5.2)?
答案 0 :(得分:1)
一种方法是试验和错误 - 使用您想要的计算功能启动测试编译命令。如果出现错误,该工具包版本不支持该计算功能:
$ nvcc -arch=sm_20 t10.cu -o t10
$ nvcc -arch=sm_52 t10.cu -o t10
nvcc fatal : Value 'sm_52' is not defined for option 'gpu-architecture'
$
另一种方法是阅读每个工具包附带的编程指南文档,并在/usr/local/cuda/doc
中安装(例如在linux上)。 Table 12 of that doc将列出该编译器版本支持的可用计算功能。
我确信还有其他方法。你可能可以通过头文件来查找并找出它。
答案 1 :(得分:0)
使用CUDA 6.5工具包编译CUDA 7.0示例。它在make中使用cc5.2。这是找出答案的最快方法。可能已经发现了,所以如果你告诉其他人你发现使用cc5.2为我们其他懒人工作的特定版本号,那就太好了。 :)