首页 > 分享 > Windows7 64位CUDA10.1开发环境安装教程

Windows7 64位CUDA10.1开发环境安装教程

一、环境说明

1、软件环境

windows7 64位

CUDA 10.1

Visio Studio 2017

2、硬件环境

(1)查看本机显卡

(2)下载显卡驱动

https://www.nvidia.com/Download/index.aspx?lang=en-us

(3)下载CUDA开发工具

下载CUDA 10.1

https://developer.nvidia.com/cuda-downloads?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exelocal

二、安装配置

1、安装显卡驱动和CUDA 10.1

2、测试环境

出现以上信息配置成功

3、编译测试文件

(1)找到以下文件,并使用VS2017打开

(2)编译生成

(3)配置环境变量

检验CUDA_PATH和CUDA_PATH_V10.0已经存在

然后添加如下环境变量

CUDA_SDK_PATH = C:ProgramDataNVIDIA CorporationCUDA Samplesv10.1 
CUDA_LIB_PATH = %CUDA_PATH%libx64 
CUDA_BIN_PATH = %CUDA_PATH%bin 
CUDA_SDK_BIN_PATH = %CUDA_SDK_PATH%binwin64 
CUDA_SDK_LIB_PATH = %CUDA_SDK_PATH%commonlibx64
配置完成后需要重启电脑后,再一次查看

4、配置VS2017

(1)打开vs2017,创建测试工程

(2)新建的工程中添加CUDA C/C++ File

(3)添加项目依赖项,选择CUDA 10.1

(4)cuda_main.cu的属性配置成“CUDA C/C++”

5、项目配置

只配置X64

(1)包含目录配置

项目属性–>属性–>配置属性–>VC++目录–>包含目录 

添加包含目录: $(CUDA_PATH)include

(2)库目录配置

VC++目录–>库目录 

添加库目录: $(CUDA_PATH)libx64

(3)依赖项配置

配置属性–>链接器–>输入–>附加依赖项 

添加库文件: 
    cublas.lib 
    cuda.lib 
    cudadevrt.lib 
    cudart.lib 
    cudart_static.lib 
    nvcuvid.lib (添加了该库后程序运行时会报错,去掉该库)
    OpenCL.lib

6、检验

打开命令提示符:定位到 c:ProgramDataNVIDIA CorporationCUDA Samplesv10.1binwin64Release分别输入deviceQuery,bandwidthTest并运行,出现如下类似信息便说明CUDA安装成功

三、实际测试

参考:https://blog.csdn.net/u013165921/article/details/77891913

在GPU中完成一个矩阵的计算

将以下代码放到二中建立的cuda_main.cu文件,并运行

#include "cuda_runtime.h"

#include "cublas_v2.h"

#include <time.h>

#include <iostream>

using namespace std;

int const M = 5;

int const N = 10;

int main()

{

cublasStatus_t status;

float *h_A = (float*)malloc(N*M * sizeof(float));

float *h_B = (float*)malloc(N*M * sizeof(float));

float *h_C = (float*)malloc(M*M * sizeof(float));

for (int i = 0; i < N*M; i++) {

h_A[i] = (float)(rand() % 10 + 1);

h_B[i] = (float)(rand() % 10 + 1);

}

cout << "矩阵 A :" << endl;

for (int i = 0; i < N*M; i++) {

cout << h_A[i] << " ";

if ((i + 1) % N == 0) cout << endl;

}

cout << endl;

cout << "矩阵 B :" << endl;

for (int i = 0; i < N*M; i++) {

cout << h_B[i] << " ";

if ((i + 1) % M == 0) cout << endl;

}

cout << endl;

cublasHandle_t handle;

status = cublasCreate(&handle);

if (status != CUBLAS_STATUS_SUCCESS)

{

if (status == CUBLAS_STATUS_NOT_INITIALIZED) {

cout << "CUBLAS 对象实例化出错" << endl;

}

getchar();

return EXIT_FAILURE;

}

float *d_A, *d_B, *d_C;

cudaMalloc(

(void**)&d_A,

N*M * sizeof(float)

);

cudaMalloc(

(void**)&d_B,

N*M * sizeof(float)

);

cudaMalloc(

(void**)&d_C,

M*M * sizeof(float)

);

cublasSetVector(

N*M,

sizeof(float),

h_A,

1,

d_A,

1

);

cublasSetVector(

N*M,

sizeof(float),

h_B,

1,

d_B,

1

);

cudaThreadSynchronize();

float a = 1; float b = 0;

cublasSgemm(

handle,

CUBLAS_OP_T,

CUBLAS_OP_T,

M,

M,

N,

&a,

d_A,

N,

d_B,

M,

&b,

d_C,

M

);

cudaThreadSynchronize();

cublasGetVector(

M*M,

sizeof(float),

d_C,

1,

h_C,

1

);

cout << "计算结果的转置 ( (A*B)的转置 ):" << endl;

for (int i = 0; i < M*M; i++) {

cout << h_C[i] << " ";

if ((i + 1) % M == 0) cout << endl;

}

free(h_A);

free(h_B);

free(h_C);

cudaFree(d_A);

cudaFree(d_B);

cudaFree(d_C);

cublasDestroy(handle);

getchar();

return 0;

}

运行结果如下所示:

参考:

https://blog.csdn.net/linj_m/article/details/41314763

https://docs.nvidia.com/cuda/cuda-installation-guide-microsoft-windows/index.html#verify-you-have-cuda-enabled-system

https://blog.csdn.net/u013165921/article/details/77891913

相关知识

R软件安装详细教程
关于给你说windows7桌面宠物怎么弄的完全操作手段
pkpm怎么安装专业交流论坛
Python和MATLAB交互的基本操作
宠物商店管理系统前端开发与部署教程
Windows7系统屏幕保护程序设置
windows7桌面宠物怎么弄 电脑宠物桌面
【2024最新版】PyCharm专业版如何白嫖?PyCharm安装激活教程,Python安装教程,一键激活,永久使用,保姆级基础,零基础也能直接上手!
项目开发计划(GB856T——88)
宠物连连看3.0怎么安装: 宠物连连看3.0安装教程

网址: Windows7 64位CUDA10.1开发环境安装教程 https://m.mcbbbk.com/newsview992406.html

所属分类:萌宠日常
上一篇: WAS应用服务器搭建与管理
下一篇: Linux 环境下 NFS 服务