简洁!一步步带你安装Windows11下GPU版本的tensorflow2.6.0和pytorch2.3.0

  • 前言
  • 一、安装最新的显卡驱动程序
  • 二、添加国内源
  • 三、安装tensorflow和pytorch
  • 1.安装tensorflow
  • 1.1创建虚拟环境并激活
  • 1.2查找能够安装的TensorFlow-gpu版本
  • 1.3安装cuDNN和CUDA
  • 1.3.1根据官网找对应的cuDNN和CUDA版本
  • 1.3.2conda中搜索cudnn和cudatoolkit 可用版本
  • 1.3.3安装cudatoolkit 和 cudnn
  • 1.3.4 安装tensorflow
  • 1.3.5 调整包版本
  • 1.4 简单测试tensorflow-gpu是否可用
  • 2 安装pytorch
  • 2.1 创建虚拟环境并激活
  • 2.2安装
  • 2.3 简单测试pytorch-gpu是否可用
  • 三、清楚conda缓存
  • 总结
  • 参考


前言

最近换了台电脑,重新配置了深度学习环境。经一番周折,发现安装tensorflow也能像pytorch一样简单。


一、安装最新的显卡驱动程序

将显卡驱动更新到最新(具体原因看此文章最后总结),以显卡NVIDIA GeForce RTX 4060 为例:

python torch 分别下载cpu gpu版本_tensorflow2

python torch 分别下载cpu gpu版本_CUDA_02

二、添加国内源

  1. 更改conda为清华源(下载速度快):
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge 
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/

显示添加的镜像

conda config --show channels

如图即成功:

python torch 分别下载cpu gpu版本_CUDA_03

最重要的是下面这个源! 很多cudatoolkit和cudnn版本都在这个源下载,一次成功的关键

https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge

  1. 显示包的通道地址
conda config --set show_channel_urls yes

这样便于观察所下载的包来自于那个镜像源

三、安装tensorflow和pytorch

1.安装tensorflow

1.1创建虚拟环境并激活

创建环境 :环境名称叫做 :tf2.6.0(名字随便取,最好短一点)

conda create --name tf2.6.0

如图即是成功:

python torch 分别下载cpu gpu版本_conda_04

激活环境

conda activate tf2.6.0

如图即是成功:

python torch 分别下载cpu gpu版本_conda_05

1.2查找能够安装的TensorFlow-gpu版本

conda search tensorflow-gpu

显示如下:(时间是2024.5.9)

python torch 分别下载cpu gpu版本_pytorch_06

可以安装的版本如红框所示。

1.3安装cuDNN和CUDA

1.3.1根据官网找对应的cuDNN和CUDA版本

官网只保留了前两位版本号。conda中有tensorflow所需动态链接库,所以我们不用去NVIDIA官网手动下载CUDA和cuDNN包了。另外CUDA = CUDA ToolKit ,所以我们在conda中搜索包的名字是 cudnn 和 cudatoolkit 。(小写)

我们安装tensorflow-gpu2.6.0,所以我们需要cudnn8.1和cudatoolkit11.2(对应下方图)

python torch 分别下载cpu gpu版本_conda_07

TensorFlow安装指南官方链接

1.3.2conda中搜索cudnn和cudatoolkit 可用版本
conda search cudatoolkit

有我们需要的cudatoolkit,并且具体版本号是11.2.0。(为什么标记第二个?因为conda下载的是这个包,下面会标记出来)

python torch 分别下载cpu gpu版本_conda_08

搜索cudnn

conda search cudnn

有我们需要的cudnn,并且具体版本号是8.1.0.77,下一步进行安装。

python torch 分别下载cpu gpu版本_pytorch_09

1.3.3安装cudatoolkit 和 cudnn

安装cudatoolkit

conda install cudatoolkit=11.2.0

python torch 分别下载cpu gpu版本_CUDA_10

安装cudnn

conda install cudnn=8.1.0.77

python torch 分别下载cpu gpu版本_tensorflow_11

出现done即成功。

1.3.4 安装tensorflow

通过conda安装tensoflow时,自动配置的包运行时有冲突,所以我们用pip来安装tensorflow-gpu。pip是管理python包的工具,目前我们的环境中并没有安装python,所以我们先安装python,这样通过pip安装的包才会在tf2.6.0环境中,不然会将通过pip安装的包安装在base环境中,造成混乱。 安装python

conda install python=3.9

python torch 分别下载cpu gpu版本_tensorflow_12

这样通过pip安装的包就会在tf2.6.0环境中了

python torch 分别下载cpu gpu版本_tensorflow_13

安装tensorflow-gpu

pip install tensorflow-gpu==2.6.0

这里是双等号,一连串下载后即可,现在使用tensorflow还是会包冲突,最后调整一下numpy和protobuf版本。

1.3.5 调整包版本
pip install protobuf==3.20.0
pip install numpy==1.19.5

大功告成!

python torch 分别下载cpu gpu版本_CUDA_14

1.4 简单测试tensorflow-gpu是否可用

  1. 激活tf2.6.0环境下的python解释器
  2. 运行下方测试代码
  3. 有GPU设备即成功
import tensorflow as tf
tf.config.list_physical_devices('GPU')

python torch 分别下载cpu gpu版本_conda_15

2 安装pytorch

2.1 创建虚拟环境并激活

创建环境

conda create --name pt2.3

激活环境

conda activate pt2.3

2.2安装

python torch 分别下载cpu gpu版本_tensorflow_16

conda install pytorch torchvision torchaudio pytorch-cuda=12.1 -c pytorch -c nvidia

一行命令即可,conda会自动配置依赖。如下图的红框 ,包括最基础的python包,和最重要的cuda包。若网络中断重新执行上述命令即可。出现done即成功。

python torch 分别下载cpu gpu版本_tensorflow2_17

python torch 分别下载cpu gpu版本_CUDA_18

2.3 简单测试pytorch-gpu是否可用

  1. 激活pt2.3环境下的python解释器
  2. 运行下方测试代码
  3. True即为成功
import torch
torch.cuda.is_available()

python torch 分别下载cpu gpu版本_pytorch_19

三、清楚conda缓存

# 删除无用的包和缓存
conda clean --all

python torch 分别下载cpu gpu版本_CUDA_20

可以看出,占用的磁盘空间还是挺多的,删除缓存后环境正常使用,这样便更加清爽了!

总结

以前总是要手动去安装CUDA和cuDNN,不同环境需要的不同CUDA版本都下在本地,甚是麻烦。这次了解到并不需要安装全部的CUDA,并且conda可以直接下载,这样安装步骤就十分简洁了! 注:conda 自动配置tensorflow环境依赖会有numpy包冲突。

参考

https://zhuanlan.zhihu.com/p/91334380