如需学习配置方法,推荐一篇文章,请看: http://www.cnblogs.com/xing901022/p/3248469.html
以下是我的配置过程
win7 64位 VS2010
配置CUDA一共需要3个文件:
cuda_6.0.37_winvista_win7_win8.1_notebook_64 下载地址: https://developer.nvidia.com/cuda-downloads,
cudasdk_2.3_win_64 下载地址忘记了额。。也可能不必安装这个,因为上边那个文件就有包含SDK
VA_X_Setup2001 下载地址:http://download.csdn.net/detail/sun7_she/7775145
1、关于cuda_6.0.37_winvista_win7_win8.1_notebook_64
之前有其他的方法中提到要有许多文件的,比如toolkit、SDK~但是由于目前版本更新,似乎都已经涵盖了,就不必自己一个一个去配置了。直接运行cuda_6.0.37_winvista_win7_win8.1_notebook_64 就OK。
安装方法,就是一直点下一步,遇到某一页有问:自定义安装还是高级,我选得高级——然后就可以安装到你自己定义的路径下边了——之后就是等待安装完成重启电脑
配置过程不要离开,会有两次询问是否安装“某某程序”,都点击安装即可,如果离开,会导致安装失败
配置环境变量:
CUDA默认配置的为:
CUDA_PATH F:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0
CUDA_PATH_V6.0 F:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0
我们需要添加的为:
CUDA_BIN_PATH %CUDA_PATH%\bin
CUDA_LIB_PATH %CUDA_PATH%\lib\x64
CUDA_SDK_BIN %CUDA_SDK_PATH%\bin\win64
CUDA_SDK_LIB %CUDA_SDK_PATH%\common\lib\x64
CUDA_SDK_PATH F:\Program Files\NVIDIA Corporation\CUDA Samples\v6.0
2、关于VA_X_Setup2001
其实这个是有关代码高亮显示的,并非有关CUDA编程函数的。也是直接运行安装就行
3、关于代码高亮设置,请参考
http://blog.csdn.net/jayxujia123/article/details/12111941
http://bbs.csdn.net/topics/370015301 (这个全一些)
打开VS2010,在菜单中找到VAssistX--Visual Assist X Options——按如图所示设置
其中左边三行路径为:
F:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK\C\common\inc
F:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK\shared\inc
F:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\include
我的目录是这样的,请读者根据自身情况自行更改~
4、红色波浪线:
打开VS2010,按Alt+F7
在包含目录中添加:
F:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK\C\common\inc
F:\ProgramData\NVIDIA Corporation\NVIDIA GPU Computing SDK\shared\inc
F:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v6.0\include
我的目录是这样的,请读者根据自身情况自行更改~
以上设置完之后还是有红色波浪线,因此需要按照以下步骤,去掉剩下的波浪线:
1. VS2010显示.cu文件时,有很多CUDA函数下有波浪线的问题
2. 在.cu文件里使用VS2010的“转到定义”功能查无法找到CUDA函数的定义
--------------------------------
这两个问题的解决方法其实是一样的,原因是VS2010不认识这些函数,不指定它们在那个头文件里包含的,
解决的方法很简单,把CUDA tookit 和CUDA SDK的头文件路径加到VS2010的VC++目录里面。
在VS2008里面使用工具->选项对话框里面可以设置,但是VS2010的这个对话框里显示“工具">"选项"中的VC++目标编辑功能已被否决。
经过网上搜索发现此工作已经变成了项目属性里的选项。
修改方法是:使用”视图”->其它窗口->属性窗口,打开属性管理器视图。
属性管理器显示是项目所有的配置信息:如Debug|win32 Debug|X64,Release|32 Relase|x64 ,对32位和64位配置需要单独,同一平台的Debug和Relase只要修改一个就形了,如修改了Debug|Win32 ,则Release|win32就无需修改了。
具体方法,假设修改Debug|win32,鼠标点击展开Debug|win32项目,可以看到第一个子项目是“microsoft .Cpp.Win32.user" ,双击该项目,出现“microsoft .Cpp.Win32.user”对话框,
对话框里面有VC++目录选项, 在右边的“包含目录”选项里,单击鼠标,选编辑,添加CUDA toolkit 的include目录,CUDA SDK目录下的\C\common\inc 和 \share\inc 目录信息,这三个目录也就是添加到VAssistX里的头文件目录,目的是让VC2010知道这些头文件里定义的函数,重启VS2010,打开CUDA工程
VS2010就不会在CUDA函数下显示红色波浪线了,而且可以使用“转到定义”,“转到声明”功能定位到CUDA函数和类型定义的文件。
最后一个小问题:经过如上的设置,基本上不会再有波浪线出现,个别符号例外,有波浪线也可以转到定义。
但是发现一些小问题,如sdk例子template项目和MatrixMul项目,打开后发现在xxxx_kernel.cu里定义的函数,在其它.cu里还是有波浪线,也不能使用“转到定义”功能,如matrixMul.cu里无法查找在matrixMul_kernel.cu里定义的函数matrixMul() ,查看matrixMul.cu文件发现该文件采用如下形式包含matrixMul_kernel.cu文件:include<matrixMul_kernel.cu>
这是告诉VS2010要到VS2010系统定义的include目录里面查找包含文件,实际上该文件是在当前项目的目录里。CUDA的编译器可以找到该文件(有点怪),VS2010找不到该文件,该文件里定义的函数VS2010也不认识,解决方法很简单,改成include“matrixMul_kernel.cu“,这样CDUA编译器能找到该文件,VS也能找到该文件,该文件里定义的函数就不会有下划线了,可以使用“转到定义”,“转到声明”,“查找引用”功能定位到了。