一般CUDA安装失败都是由于其中Visual Studio(VS) Intergration无法安装导致的:
当然可以通过自定义的方式取消Visual Studio Intergration进行安装,
然后再重新用CUDA安装程序将Visual Studio Intergration单独装上去,不过这种方法成功概率不大。并且随之而来的问题就是在Visual Studio编译时会报错,比如我所使用的VS2015出现了如下错误“未找到导入的项目“C:Program Files (x86)MSBuildMicrosoft.Cppv4.0V140BuildCustomizationsCUDA 8.0.props”。请确认<Import> 声明中的路径正确,且磁盘上存在该文件。”
基础篇
基础篇用于解决编译问题,完成这一部分即可保证CUDA程序正常运行。
首先请按照
的选择项自定义安装CUDA,并记下你所释放安装程序的路径,比如我的是“D:Downloadtest”:
然后在安装CUDA的时候,将“D:Downloadtest”路径下的CUDAVisualStudioIntegration文件夹拷到其他位置保存,这里记作“dirCUDAVisualStudioIntegration”,dir为你拷贝文件所在路径。该文件夹所含文件如下图示:
随后等待CUDA安装完成后点击确认。
之后,请运行VS,编译CUDA Samples工程(“C:ProgramDataNVIDIA CorporationCUDA Samples”),并找到VS报错路径,比如我的是“C:Program Files (x86)MSBuildMicrosoft.Cppv4.0V140BuildCustomizationsCUDA 8.0.props”,并将“dirCUDAVisualStudioIntegrationextrasvisual_studio_integrationMSBuildExtensions”中的所有文件拷贝到“C:Program Files (x86)MSBuildMicrosoft.Cppv4.0V140BuildCustomizations”文件夹中。
重启VS,即可解决问题。
进阶篇
进阶篇可实现VS中直接新建CUDA解决方案的功能。
我们发现,虽然上述VS已可以正常编译,但毕竟不是完整安装CUDA,因此缺失了VS中“新建CUDA解决方案”的功能,如图:
这时候只需要将“dirCUDAVisualStudioIntegrationextrasvisual_studio_integration”下的CudaProjectVsWizards文件夹整体拷贝到“D:ProgramFilesMicrosoft Visual Studio 14.0Common7IDEExtensions”下即可,其中加粗部分为VS安装路径。重启VS,问题解决:
最后的最后,还可以把“dirCUDAVisualStudioIntegration”下的NVIDIA_Nsight_Visual_Studio_Edition_Win64_5.2.0.16321安装一下,它是CUDA给VS2015提供的一个调试插件。
Tips:
1. 请注意文中所述路径并不一定是你所需要的路径,而所需路径的寻找方法已在文中给出,请仔细阅读;
2. 至于CUDAVisualStudioIntegration文件夹下的其他文件,我就不知道是做什么用的了,至少目前运行TensorFlow一切正常。并且毕竟刚开始接触这些东西,残存的一些文件归属问题就等熟练了之后再做处理吧。