下载安装:
1.vs2013
下载网址:https://www.visualstudio.com/zh-cn/downloads/download-visual-studio-vs.aspx
2.cuda
下载地址:https://developer.nvidia.com/cuda-downloads/
下载完之后进行安装,安装时间有点长,请耐心等待,默认是安装在c盘目录下,你也可以更改安装目录,
环境变量配置:
cuda8.0安装完成之后在系统环境变量中自动配置了两个系统变量
CUDA_PATH:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0
CUDA_PATH_V8_0:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0
但是为了之后的vs2013的配置做准备我们需要在配置五个系统变量
CUDA_BIN_PATH:%CUDA_PATH%\bin
CUDA_LIB_PATH:%CUDA_PATH%\lib\Win32
CUDA_SDK_BIN:%CUDA_SDK_PATH%\bin\Win64
CUDA_SDK_LIB:%CUDA_SDK_PATH%\common\lib\x64
CUDA_SDK_PATH:C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0
在系统环境变量path后添加如下内容
;%CUDA_LIB_PATH%;%CUDA_BIN_PATH%;%CUDA_SDK_LIB_PATH%;%CUDA_SDK_BIN_PATH%;
测试是否成功:
进入cmd,输入nvcc -V命令,如图所示
表示cuda安装成功。
在进入sdk实例安装目录C:\ProgramData\NVIDIA Corporation\CUDA Samples\v8.0(默认文件夹隐藏,需要显示出来)
点击Samples_vs2013.sln文件打开vs2013执行
如果这时候出现
此时,是未找到CUDA 8.0.props,将C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v8.0\extras\visual_studio_integration\MSBuildExtensions下的文件复制到C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\V120\BuildCustomizations目录下,重启VS2013即可。
这时候在来运行Samples_vs2013.sln文件就会出现如图所示
表明测试成功。
配置vs2013:
先打开vs2013
新建一个项目选择win32控制台应用程序
勾择<空项目>
源文件中新建项
选择 CUDA C/C++ File , 输入名称
右键工程->生成依赖项->生成自定义->选择cuda生成
右键test.cu->属性->常规->项类型->选择CUDA C/C++
右键工程->属性->链接器->输入中添加 cudart.lib;
链接器->常规中添加目录 $(CUDA_PATH)\lib\$(Platform);
在工具->选项->文本编辑器->文件扩展名->添加cu \cuh两个文件扩展名
至此,编译环境的相关搭建就完成了
下面这段是测试代码:
1 #include< stdio.h> 2 #include "cuda_runtime.h" 3 #include "device_launch_parameters.h" 4 5 bool InitCUDA() 6 { 7 int count; 8 cudaGetDeviceCount(&count); 9 if(count == 0) 10 { 11 fprintf(stderr, "There is no device.\n"); 12 return false; 13 } 14 15 int i; 16 for(i = 0; i < count; i++) 17 { 18 cudaDeviceProp prop; 19 if(cudaGetDeviceProperties(&prop, i) == cudaSuccess) 20 { 21 if(prop.major >= 1) 22 { 23 break; 24 } 25 } 26 } 27 28 if(i == count) 29 30 { 31 fprintf(stderr, "There is no device supporting CUDA 1.x.\n"); 32 return false; 33 } 34 35 cudaSetDevice(i); 36 return true; 37 } 38 39 int main() 40 { 41 if(!InitCUDA()) 42 { 43 return 0; 44 } 45 46 printf("HelloWorld, CUDA has been initialized.\n"); 47 system("pause"); 48 return 0; 49 }
运行结果:
参考:https://blog.csdn.net/wolf2345/article/details/79564705
来源:https://www.cnblogs.com/ww1x/p/10820362.html