Win10安装CUDA、cuDNN,并测试Tensorflow是否开启了GPU加速

CUDA和cuDNN安装

版本选择

首先第一步是确定TensorFlow支持哪个版本的CUDA和cuDNN,通过以下链接查看:
https://tensorflow.google.cn/install/source
第二步确定本机的显卡支持CUDA哪个版本
在这里插入图片描述
可以看到显卡支持的是11.2,所以最终确定版本对应如下:
TensorFlow-2.6.0
CUDA-11.2
cuDNN-8.1
注意:tensorflow-2.0.0开始已经默认支持GPU,不需要下载tensorflow-gpu版本,见下图
在这里插入图片描述

CUDA 11.2安装

打开链接
https://developer.nvidia.cn/cuda-downloads
选择相应的版本下载安装:
在这里插入图片描述

在这里插入图片描述
选择“精简”安装即可
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
设置环境变量
在安装CUDA的时候已经自动生成了两个环境变量
在这里插入图片描述
在系统PATH下添加
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\bin
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\include
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\lib
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\libnvvp

并添加如下新的变量
CUDA_SDK_PATH = C:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.2
CUDA_LIB_PATH = %CUDA_PATH%\lib\x64
CUDA_BIN_PATH = %CUDA_PATH%\bin
CUDA_SDK_BIN_PATH = %CUDA_SDK_PATH%\bin\win64
CUDA_SDK_LIB_PATH = %CUDA_SDK_PATH%\common\lib\x64

cuDNN8.1安装

访问链接
https://developer.nvidia.cn/rdp/cudnn-archive
直接右键将下载链接复制到迅雷即可下载,不需要注册登录,但是需要开通迅雷会员

在这里插入图片描述
下载后解压,直接将解压的所有文件复制到CUDA的安装目录
在这里插入图片描述

测试CUDA是否安装成功

进入目录:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.2\extras\demo_suite
打开cmd
(1)执行bandwidthTest.exe,看到Result = PASS说明成功
在这里插入图片描述
(2)运行deviceQuery.exe,看到Result = PASS说明成功
在这里插入图片描述

测试tensorflow是否开启了GPU加速

理论上只要把显卡驱动、CUDA、cuDNN安装成功并顺利测试通过,程序就会优先使用GPU运行,下面通过一个小程序测试一下是否配置成功。

使用pycharm新建工程,本人使用的是anaconda环境,根据上图,tensorflow2.6.0要求Python环境选择3.6-3.9均可:
在这里插入图片描述
进入项目打开terminal,安装tensorflow-2.6.0

pip install tensorflow==2.6.0

在这里插入图片描述
编辑测试代码

import tensorflow as tf
tf.compat.v1.disable_eager_execution()
a = tf.constant([1.2, 2.3, 3.6], shape=[3], name='a')
b = tf.constant([1.2, 2.3, 3.6], shape=[3], name='b')

c = a + b
session = tf.compat.v1.Session(config=tf.compat.v1.ConfigProto(log_device_placement=True))
print(session.run(c))

运行代码,查看控制台输出,可以看到程序默认用了GPU运行
在这里插入图片描述

修改代码,将a和b分配给cpu执行

import tensorflow as tf
tf.compat.v1.disable_eager_execution()
with tf.device('/cpu:0'):
    a = tf.constant([1.2, 2.3, 3.6], shape=[3], name='a')
    b = tf.constant([1.2, 2.3, 3.6], shape=[3], name='b')

c = a + b
session = tf.compat.v1.Session(config=tf.compat.v1.ConfigProto(log_device_placement=True))
print(session.run(c))


查看运行结果:
在这里插入图片描述

  • 5
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值