前言

此篇文章所安装的Tensorflow版本为2.4.0,CUDA版本为11.0,cuDNN版本为8.0,其他的版本也可以参考,适合第一次装安装tensorflow的小伙伴学习。


一、Tensorflow简介

Tensorflow是目前机器学习主流框架以及其它涉及大量数学运算的算法库之一。Tensorflow由Google开发,是GitHub上最受欢迎的机器学习库之一。
在这里插入图片描述

二、Tensorflow版本介绍

1.Tensorflow与python、CUDA、cuDNN对应关系

首先进入Tensorflow官网:https://tensorflow.google.cn/install/source_windows
找到windows对应的版本的模块
在这里插入图片描述
在这里插入图片描述
然后再查看自己python的版本,在cmd中输入python --version查看python的版本,如果没有添加环境变量,找到所安装的python.exe,将其添加到环境变量中。
我的python版本是3.8,所以装tensorflow的话就装2.2-2.4
在这里插入图片描述
在这里插入图片描述
我们看到cuDNN、CUDA有不同的版本要求,但是Compiler——MSVC 2019(Microsoft Visual Studio 2019 BuildTools)、Build tools这两个需不需要安装呢?这个我暂时也不知道,我是新装的电脑,没装Compiler和Build tools也能正常运行tensorflow,所以暂且不管。
我们现在已经知道了Tensorflow与python、CUDA、cuDNN对应关系,还有一点需要注意——查看自己的电脑能装什么样的CUDA!

2.NVIDIA显卡和CUDA的版本号关系

官网查看地址:https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html#title-new-features
在这里插入图片描述
我的是windows10,所以看到左右边的一列,这些数字代表Driver Version,下一步就是查看自己的电脑版本。
方法一:进入到nvidia-smi对应的文件夹,在地址栏里清空并输入cmd,然后输入nvidia-smi,我们能看到Driver Version 456.43,所以我最高能装到CUDA 11.1 GA版本,所以CUDA11.0和10.1都能装。
在这里插入图片描述
在这里插入图片描述
方法二:鼠标右键点击桌面,选择NVIDIA 控制面板,在主页也能看到版本信息,然后也点击系统信息进一步查看
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
这也能看到CUDA的版本信息👇
在这里插入图片描述

三、Tensorflow下载

先装一个tensorflow试一下吧,没有换源的话安装起来比较慢,而且默认的下载可能会出错,可以使用以下命令安装
pip install tensorflow==2.3.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
在这里插入图片描述
此时我的tensorflow已经安装好了,可以使用pycharm查看,也可以在cmd或者Anaconda Prompt中使用pip list查看
在这里插入图片描述
在这里插入图片描述
然后使用import tensorflow as tf,发现“Could not load dynamic library ‘cudart64_101.dll’”——“无法加载动态库"cudart64_101.dll"”,它说的是cuda 101,代表10.1,我电脑的是11.1,所以不能用,现在就可以直接下载CUDA10.1了。为了给大家更全面的演示,我将卸载现在的tensorflow2.3,装tensorflow2.4.
在这里插入图片描述
使用pip uninstall tensorflow卸载
在这里插入图片描述
再次使用pip install tensorflow==2.4.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
在这里插入图片描述
安装完毕后,再次运行import tensorflow as tf,可以直接点击右上角绿色三角形运行,也可以选中目标代码,右键选择Execute Selection in Python Console,或者按住Alt+Shift+E
在这里插入图片描述
我们发现现在的cuda变成了110,代表11.0,所以之后要去下载cuda11.0
在这里插入图片描述

四、CUDA、cuDNN下载

CUDA下载地址:https://developer.nvidia.com/cuda-toolkit-archive
CUDA11.0网盘下载链接:https://pan.baidu.com/s/1J_jOEXlJDLjvieupgZUFZw
提取码:0wzn
在这里插入图片描述
在这里插入图片描述
双击安装包
在这里插入图片描述
在这里插入图片描述
更改目录
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
接下来有两种安装选项,一个是精简安装,一个是自定义安装。精简安装会安装CUDA相关组件,同时也会将显卡驱动重新安装,如果不想重新安装显卡驱动,可以选择自定义安装,这里选择自定义安装。
在这里插入图片描述
自定义的默认是全选,新手小白安装的话就很懵,安装几次了可以选择只安装第一个CUDA。
NVIDIA GeForce Experience这个该选吗?我看其他博主很多都没选择,我搜了一些资料,说是没用,还是不安装。
Display Driver对应的版本是451.48,我的是456.43,如果你电脑目前安装的驱动版本号新于CUDA本身自带的驱动版本号,那一定要把这个勾去掉。否则会安装失败(相同的话,也不用去勾选)。
HD Audio 即High Definition Audio,意思为高保真音频,它和Display Driver是连绑在一起的,不安装。
PhysX是一套由AGEIA公司开发的物理运算引擎,装吧,无所谓。
在这里插入图片描述
其中还有一个Visual Studio Integration选项,看自己是否需要安装,我看tensorflow2.4对应的是VS2019,这个11.0是啥啊,我去搜了一下,这代表VC11,就是VS2012,版本不对啊,所以我放弃安装它。(后面其实我也没安装VS2019。)
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
之后会让选择CUDA开发组件、文档、示例的安装位置,此处默认即可,默认安装位置在 C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\版本
在这里插入图片描述
在这里插入图片描述
然后看看自己的环境变量,CUDA9.1版本安装之后会自动配置好环境变量,不需手动添加。
在这里插入图片描述
在这里插入图片描述
在cmd中输入nvcc -V,就能看到装的CUDA的版本
在这里插入图片描述


接下来安装cuDNN 8.0
CUDA这个平台一开始并没有安装cuDNN库,当开发者们需要用到深度学习GPU加速时才安装cuDNN库,工作速度相较CPU快很多。
cuDNN下载网址:https://developer.nvidia.com/rdp/cudnn-archive
cuDNN v8.0.5百度网盘下载链接:https://pan.baidu.com/s/1SIncn2AnTIULbrulf6ujGQ?pwd=6r8t
提取码:6r8t
注册、登录过程自己解决一下,找到CUDA版本,同时对应到tensorflow要求的版本
在这里插入图片描述
我选择cuDNN v8.0.5
在这里插入图片描述
下载完毕:
在这里插入图片描述
解压缩:
在这里插入图片描述
把这些文件全部复制,找到CUDA安装目录v11.0下,直接粘贴
在这里插入图片描述

五、Tensorflow验证

打开pycharm验证一下,出现Successfully opened dynamic library cudart64_110.dll,说明CUDA能正常使用了
在这里插入图片描述
那么时使用tensorflow过程能使用GPU吗?来,验证一下。
方法一:

import tensorflow as tf
tf.test.is_gpu_available()  # 查看是否支持GPU显卡,出现True则可以使用GPU

在这里插入图片描述
方法二:

from tensorflow.python.client import device_lib
print(device_lib.list_local_devices())   # 抓取到GPU相关信息则可以使用GPU

在这里插入图片描述

方法三:

import tensorflow as tf
if tf.test.gpu_device_name():
    print('Default GPU Device: {}'.format(tf.test.gpu_device_name()))
else:
    print("Please install GPU version of TF")

在这里插入图片描述

总结

此次安装Tensorflow过程比较详细,也对比了其他的文章,但仍有一个疑问,不需要安装MSVC和Bazel了吗?现在能正常使用tensorflow就行了,之后遇到需要安装的问题再安装也行的。
在这里插入图片描述

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐