天天看点

windows 下 CUDA 并行编程环境搭建

0 写在前面

感谢网上各位大佬的分享,文章将引用本人在网上查找的部分链接及内容,如有不当之处请留言之处,定及时改正!

版本:Windows 10 ,CUDA 10.2 ,VS2019

安装过程出现的问题:本人的第一次安装中出现安装失败的错误,解决办法是将现有的NVIDA驱动卸载后,重新安装CUDA,成功。

参考 (14条消息) Win 10 安装 cuda 莫名安装失败?_Maths’ student falling in physics and geography-CSDN博客_cuda10安装失败

1 整个安装过程参考:

从GPU编程到SIMT核心 - 知乎 (zhihu.com)

1.1 下载、安装VS

1.2 下载安装CUDA工具包:一路默认安装

1.3 检查和设置环境变量:此电脑->属性->高级系统设置->环境变量

安装成功后生成的环境变量:

CUDA_PATH C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2

CUDA_PATH_V10_2 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2

手动添加(系统)环境变量(这里后期应该会用上):

CUDA_BIN_PATH C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\bin

CUDA_LIB_PATH C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\lib\x64

CUDA_SDK_BIN_PATH C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2\bin\win64

CUDA_SDK_LIB_PATH C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2\common\lib\x64

CUDA_SDK_PATH C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2

1.4 测试安装是否成功:打开控制面板Win+R,分别输入

nvcc --version

set cuda

验证

deviceQuery

bandwidthTest

,在命令窗口运行测试文件,定位到 在

cuda

安装目录的 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\extras\demo_suite,分别输入deviceQuery.exe,bandwidthTest.exe并运行,两个地方的

Result=PASS

则说明通过,反之,

Rsult=Fail

则需要重新安装。

1.5 VS2019测试(可跳过进行步骤6)

参考:win10安装cuda10.0以及VS2013下的CUDA编程测试_wolfcsharp的博客-CSDN博客

创建空项目->配置属性(debug x64):

包含目录:

C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2\common\inc

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\include

库目录:

C:\ProgramData\NVIDIA Corporation\CUDA Samples\v10.2\common\lib\x64

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v10.2\lib\x64

库:

cublas.lib

cuda.lib

cudadevrt.lib

cudart.lib

cudart_static.lib

cufft.lib

cufftw.lib

curand.lib

cusolver.lib

cusparse.lib

nppc.lib

nppial.lib

nppicc.lib

nppicom.lib

nppidei.lib

nppif.lib

nppig.lib

nppim.lib

nppist.lib

nppisu.lib

nppitc.lib

npps.lib

nvblas.lib

nvgraph.lib

nvml.lib

nvrtc.lib

OpenCL.lib

测试程序:

#include "cuda_runtime.h"
#include "device_launch_parameters.h"
#include<iostream>
using namespace std;

//打印GPU设备信息
void print_GPU_device_info()
{
	int deviceCount;
	cudaGetDeviceCount(&deviceCount);
	for (int i = 0; i < deviceCount; i++)
	{
		cudaDeviceProp devProp;
		cudaGetDeviceProperties(&devProp, i);
		std::cout << "使用GPU device " << i << ": " << devProp.name << std::endl;
		std::cout << "设备全局内存总量: " << devProp.totalGlobalMem / 1024 / 1024 << "MB" << std::endl;
		std::cout << "SM的数量:" << devProp.multiProcessorCount << std::endl;
		std::cout << "每个SM的最大线程数:" << devProp.maxThreadsPerMultiProcessor << std::endl;
		std::cout << "每个SM的最大线程束数:" << devProp.maxThreadsPerMultiProcessor / 32 << std::endl;
		std::cout << "每个Block的共享内存大小:" << devProp.sharedMemPerBlock / 1024.0 << " KB" << std::endl;
		std::cout << "每个Block的最大线程数:" << devProp.maxThreadsPerBlock << std::endl;
		std::cout << "每个Block中可用的32位寄存器数量: " << devProp.regsPerBlock << std::endl;
		std::cout << "======================================================" << std::endl;

	}
}


int main()
{
	print_GPU_device_info();

	while (1);
	return 0;
}
           

2 VS环境配置参考:

【CUDA】CUDA9.0+VS2017+win10详细配置_笔尖的博客-CSDN博客_cuda配置

本人配置vs2019可成功运行参考链接中的测试代码

3 其他参考

干货总结]vs2019+CUDA10.2,环境配置与代码运行 - 简书 (jianshu.com)

​ (1条消息) vs2017 配置cuda 项目_c++应用程序编程和调试专栏-CSDN博客

​ CUDA编程入门(三)从矩阵加法例程上手CUDA编程 - 知乎 (zhihu.com)

继续阅读