Windows系统用Anaconda安装tensorflow和pytorch的gpu版本

文章目录

  • 前言
    • 我们要做哪些工作?
    • 安装的这些东西都是啥,什么用?
    • 虚拟环境,环境变量是啥?
    • 安装的难点
  • 安装Anaconda
    • 下载并安装Anaconda
    • 检查安装结果
  • 前提准备
    • 检查是否支持GPU
    • 选择合适的版本
      • CUDA驱动及CUDA Toolkit最高对应版本
      • cuda 和cudnn 的版本匹配
      • tensorflow-gpu 与cudnn、cuda、python的匹配
      • CUDA Toolkit和PyTorch对应版本
      • 安装版本汇总
  • 安装CUDA
    • 下载CUDA
    • 配置环境变量
    • 检验cuda是否安装成功
  • 安装Cudnn
  • 安装pytorch
  • 安装tensorflow-gpu
  • 安装pycharm并导入虚拟环境
  • 安装jupyter notebook并导入虚拟环境
  • 检查是否在使用GPU加速
    • 通过运行代码验证
    • 通过查看GPU的利用率验证
  • 后记

前言

我们要做哪些工作?

首先我们在这篇文章中要安装的软件有:

  • Anaconda
  • cuda
  • cudnn
    需要配置的框架有:
  • pytorch
  • tensorflow
    需要安装运行代码的平台有:
  • pycharm
  • jupyter notebook

版本分别是:
在这里插入图片描述

安装的这些东西都是啥,什么用?

我第一次接触时也很蒙为啥要装这些东西呢?他们都是干啥的具体有什么用呢?下面记录了一下我的理解

  • Anaconda : Anaconda是一个打包的集合,里面预装好了conda、某个版本的python、众多packages、科学计算工具提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。所以Anaconda是我们首先必须安装的软件
  • cuda(Compute Unified Device Architecture):中文叫统一计算架构。我们一般电脑都有NVIDIA的显卡驱动程序,CUDA是NVIDIA推出的用于自家GPU的并行计算框架,也就是说CUDA只能在NVIDIA的GPU上运行,而且只有当要解决的计算问题是可以大量并行计算的时候才能发挥CUDA的作用。
  • cudnn(CUDA Deep Neural Network library): 是NVIDIA打造的针对深度神经网络的加速
    ,是一个用于深层神经网络的GPU加速库。如果你要用GPU训练模型,cuDNN不是必须的,但
    是一般会采用这个加速库。
  • tensorflow,pytorch : 这俩都是当下非常流行的深度学习框架,用这框架可以方便我们搭建网络模型,并进行训练,但在训练过程中的要处理的输入数据很多,有时是上万张图片,如果用cpu去跑的话花费的时间太多,所以我们选择是用gpu版本的tensorflow 和pytorch
  • pycharm: IDEA开发环境,适合跑很大的项目,有degug功能
  • jupyter notebook: 也是用来调试python 代码的IDE, 以网页的形式显示代码和输出结果。
    小结: 一切的起因都是要用python,但是它的IDE没有python解释器,所以我们要去下载一个。
    Anaconda是比较好的python管理器,所以推荐安装它。Anaconda又可以分很多个虚拟环境来管理,
    我们使用Anaconda里的python解释器是使用其某一个虚拟环境中的python解释器。(可以看到
    Anaconda每个虚拟环境中都各自有自己的python.exe解释器文件)。同时我们要管理这个Anaconda中的虚拟环境,用的是cmd或者Anaconda Prompt。然后为了搭建tensorflow 和pytorch的gpu版本的深度学习框架,我们需要安装cuda和cudnn。最后,要用一个IDE来编写调试python代码,推荐使用
    pycharm和jupyternotebook。

虚拟环境,环境变量是啥?

在安装的过程中经常会碰到虚拟环境这个名词,还用经常要配置环境变量,下面就做一个解释

  • **虚拟环境:**要运行python命令,就需要解释器Python.exe解释它。要想在代码里import numpy,就需要numpy的包,然后肯定还需要链接库啊其他什么的,这些东西就构成了一个虚拟环境。
  1. 用win+R 打开命令行窗口,键入 cmd , (一般默认打开就是cmd,点击确定或者按Enter键就行) 【cmd是什么? cmd就是命令提示符。cmd 可以理解为Windows操作系统兼容的DOS操作系
    统。】
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第1张图片
  2. 输入 conda env list conda env list 的意思是显示所有虚拟环境。(等安装完Anaconda后再来测试这一步!先了解下就行)
    一般打开时,只有base这个虚拟环境,之前说的Anaconda自带了很多科学包,指的就是“base”这
    个虚拟环境带有的包。我们如果想要新建一个虚拟环境,需要在新的环境里面重新下载包,他们是不互通的。
  • 环境变量 :安装Anaconda时需要设置环境变量,环境变量就是某些特定的文件路径。
    【Windows 系统如何进入环境变量】
  1. 打开控制面板
    【法1】点击桌面左下角的windows图标,然后点击“设置”,然后在设置界面中找到“系统”,点击进
    入。再在左侧菜单栏中找到“关于”,点击进入。
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第2张图片
    【法2】左下角在放大镜处的文本编辑框内键入”系统’’, 然后点击打开即可。
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第3张图片
    【法3】右键点击桌面上的“此电脑”图标,再在弹出的对话框中点击“属性”。
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第4张图片
  2. 高级系统设置
    然后下滑页面,在相关设置中找到“高级系统设置”,点击进入
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第5张图片
  3. 环境变量
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第6张图片
  4. 设置环境变量
    设置到用户变量,就只对这个用户有效,若设置到系统变量就对每个用户都有效。
    设置环境变量,就是为了告诉cmd 要执行某条命令,例如“conda env list”指令,应该去找谁翻译执行,而这个C:\Users\Lenovo\anaconda3就是它需要的环境变量。系统默认到Path里找,自然要到Path里设
    置。这样,即使就在用户目录下执行指令也可以执行成功。实际上,安装完Anaconda后有一个叫Anaconda Prompt的类似cmd的东西。如果在这里输入“conda env list”也可以正确执行,即 使Path没有配置好环境变量
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第7张图片

安装的难点

  • 版本的匹配问题: 主要是python版本、cuda版本、cudnn版本、pytorch版本、tensorflow的版本匹配(他们之间有相互的匹配规则,在安装前一定要弄清楚要安装的版本。不然就会像我第一次安装一样,安装完了又卸载再安装。。。)
  • 环境的冲突问题:安装完Anaconda,我们会有一个base的基础环境。但是不要把pytorch,tensorflow都安装在base 环境中(具体来说就是直接在base 环境里pip install…), 不然会有内部依赖的冲突。我觉得比较好的做法是为每一个框架搭建一个新的虚拟环境(每一个虚拟环境对应一个python版本)
  • 命令的输入窗口:我们在安装过程中会在命令窗口输入命令,但要注意是用win+R 打开的cmd窗口,还是Anaconda Prompt、Anaconda powershell Prompt
  • 安装的过程中最好不要用软件,不然可能由于网络问题导致安装失败(我第一次就是因为这个耽误了很长时间找不到error的原因。。。)

安装Anaconda

下载并安装Anaconda

  1. 首先进入Anaconda官网
  2. 选择适合自己电脑系统的版本,并点击download

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第8张图片
3.双击下载好的应用程序,并进行安装(除了下述特别注意的步骤外,其他的默认选项即可)
在这里插入图片描述
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第9张图片

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第10张图片
4. 然后打开电脑左下角的windows图标,“最近添加”中就会多出来下面几个图标(后面会用到)
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第11张图片
5. 然后点击Anaconda Navigator
这个过程中不要连外网!不然会出现如下的Error (第一次安装的时候因为这个折腾的好久以为是安装出错了)

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第12张图片

正常情况下,打开后的界面长这样(目前只有一个base环境):
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第13张图片

检查安装结果

检查安装的Anaconda版本: 在Anaconda Prompt 中键入 conda -V
在这里插入图片描述
检查已经安装的包: 在Anaconda Prompt 中键入 conda list
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第14张图片

查看当前环境: 在Anaconda Prompt 中键入 conda info -e

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第15张图片

前提准备

检查是否支持GPU

  1. 打开NVIDIA 控制面板
    搜索NVIDIA Control Panel,然后打开。
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第16张图片
  2. 然后点击"帮助",“系统信息”
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第17张图片
  3. 查看GPU的型号
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第18张图片

选择合适的版本

CUDA驱动及CUDA Toolkit最高对应版本

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第19张图片
更多匹配组合可以到cuda官网上去查看

使用nvidia-smi查询驱动版本, 我的电脑目前的驱动版本是461.73, 最高可以安装的cuda版本是11.2
注:驱动是向下兼容的,其决定了可安装的CUDA Toolkit的最高版本。
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第20张图片

cuda 和cudnn 的版本匹配

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第21张图片
更多匹配组合可以到cudnn官网上去查看(一会也会在这个网站上下载cudnn)

tensorflow-gpu 与cudnn、cuda、python的匹配

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第22张图片
更多匹配组合可以到tensorflow官网上查看

CUDA Toolkit和PyTorch对应版本

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第23张图片
更多匹配组合可以到pytorch官网上查看

安装版本汇总

cuda cudnn pytorch tensorflow-gpu python torchvision
11.0 8.0.5 1.7.1 2.4.0 3.7(tensorflow) 3.8(pytorch) 0.8.2

安装CUDA

下载CUDA

从CUDA Toolkit 官网下载地址上选择合适的版本进行下载
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第24张图片
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第25张图片
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第26张图片
在这里插入图片描述

配置环境变量

  1. 检查是否安装成功
    安装成功后在系统的环境变量中会自动添加两个变量,如图:“CUDA_PATH", 和”
    CUDA_PATH_V11_0"
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第27张图片
  2. 添加系统变量
    点击“新建”, 然后依次添加下述5个系统变量,然后点击“确认”
变量						值
CUDA_SDK_PATH  				C:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.0
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

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第28张图片
然后在系统变量Path里添加变量,双击Path添加如下变量

C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\lib\x64 
C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\bin 
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.0\common\lib\x64
C:\ProgramData\NVIDIA Corporation\CUDA Samples\v11.0\bin\win64

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第29张图片
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第30张图片

检验cuda是否安装成功

  1. 打开cmd命令窗口,切换路径
    cd C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.0\extras\demo_suite
  2. 分别运行如下命令:
    bandwidthTest.exe
    如下图,Result=Pass
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第31张图片

deviceQuery.exe
如下图,Result=Pass , 安装成功。
在这里插入图片描述

安装Cudnn

  1. 从Cudnn 官网下载地址上选择合适的版本进行下载

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第32张图片
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第33张图片
2. 解压下载好的exe文件
在这里插入图片描述
3. 将解压后的 cuda 中的所有文件复制并粘贴到 “C:\Program Files\NVIDIA GPU Computing
Toolkit\CUDA\v11.0” 目录下。
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第34张图片
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第35张图片

安装pytorch

  1. 打开Anaconda Prompt,在命令窗口输入命令 conda create -n pytorch python=3.7 (其中pytorch是我自己为虚拟环境起的名字,也可以取其他的名字。 这个过程中不要连外网,保持网络的通畅)

  2. 进入虚拟环境 activate pytorch

  3. 安装pytorch pip install pytorch==1.7.1

  4. 检查pytorch安装的版本

如果第三步出错,可以去官网轮子下载地址,选择适合自己版本的轮子,并下载到本地。
在这里插入图片描述
在这里插入图片描述
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第36张图片
切换路径到这两个whl文件所在的文件夹下,然后再pip install 文件名
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第37张图片
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第38张图片

安装tensorflow-gpu

  1. 打开Anaconda Prompt,在命令窗口输入命令 conda create -n tf-gpu python=3.7 (其中tf-gpu是我自己为虚拟环境起的名字,也可以取其他的名字。 这个过程中不要连外网,保持网络的通畅)
    在这里插入图片描述
    在这里插入图片描述

  2. 进入虚拟环境 activate tf-gpu

  3. 安装tensorflow-gpu pip install tensorflow-gpu==2.4.0
    在这里插入图片描述
    如果安装失败,也可以去官网下载轮子:http://mirrors.aliyun.com/pypi/simple/tensorflow-gpu/

  4. 检查tensorflow的安装版本
    在当前环境下键入下列三个命令:python, import tensorflow as tf,tf.__version__
    在这里插入图片描述

常用命令汇总:
创建环境
conda create -n name python=version
删除环境
conda env remove -n name
激活环境
activate name
取消激活
deactivate
安装指定版本的tensorflow-gpu
pip install tensorflow-gpu== version
卸载已经安装的tensorflow-gpu
pip uninstall tensorflow-gpu-version

安装pycharm并导入虚拟环境

  1. 首先进入jetbrains官网
  2. 在DeveloperTools中找到pycharm
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第39张图片
  3. 然后根据自己电脑的系统选择合适的版本进行下载(专业版的可以免费试用,也可以去进行学生认证)
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第40张图片
    4.无特殊说明next,install,finish即可完成安装
    在这一步要全部勾选
    Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第41张图片

安装完成后,双击图标进入软件,选择Evaluate for free (也可以去官网上进行学生认证)
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第42张图片
点击new project
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第43张图片
New environment using 选择conda,以及你想要的python版本, 然后create。
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第44张图片

点击File, setting , 找到python interpreter, 点击右边的设置图标,在弹窗中点击Add.

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第45张图片
选择Conda Environmentm, Existing Environment, 在下拉框中选择你要导入的环境,最后点击ok.

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第46张图片
导入成功后,如果下次你运行代码时想要选择某个虚拟环境,先点击"Edit Configuration"

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第47张图片
然后选择你想要的python interpreter,点击ok 就可以啦!
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第48张图片

安装jupyter notebook并导入虚拟环境

  1. 打开Anaconda prompt, 激活虚拟环境activate pytorch (此处以pytorch为例)
  2. 在当前虚拟环境下安装conda install ipykernel
  3. 安装notebook ,键入pip install notebook
  4. 将当前环境写入notebook中python -m ipykernel install --user --name pytorch --display-name pytorch (此处以pytorch为例,如果要导入tf-gpu, 把pytorch 替换成tf-gpu即可)
  5. 打开notebookipython notebook

如果你装错了,先移除再重新安装:
移除写入notebook 的虚拟环境:jupyter kernelspec remove env_name (env_name 改为你要移除的虚拟环境的名称)

这时浏览器会自动打开notebook的界面,点击new, 选择你要使用的虚拟环境。(在使用notebook的过程中,不要关闭打开notebook的命令窗口,否则关闭窗口就相当于关闭了notebook
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第49张图片
切换当前环境为新建立的虚拟环境opencvEnv(在导航栏中点击“kernel","change kernel “,“opencvEnv”) ,然后就可以在你新建的文件夹里写代码了!
当然,写代码的过程中,你也可以切换你需要的虚拟环境: 点击"kernel”,“change kernel”,然后选择就好啦
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第50张图片
下次再打开notebook时,还可以用cmd命令行窗口,切换路径(默认是c盘),然后键入jupyter notebook, 最后按’'Enter"即可
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第51张图片

补充一些notebook一些常用的快捷键:
Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第52张图片

检查是否在使用GPU加速

通过运行代码验证

  • 检查pytorch
import torch
a = torch.cuda.is_available()
print(a)

ngpu= 1
# Decide which device we want to run on
device = torch.device("cuda:0" if (torch.cuda.is_available() and ngpu > 0) else "cpu")
print(device)
print(torch.cuda.get_device_name(0))
print(torch.rand(3,3).cuda()) 

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第53张图片
若输出结果分别是True, cuda:0, 显卡的名字

  • 检查tensorflow
    运行下面的代码检查CUDA和GPU是否可用,代表CUDA和GPU可用。
import tensorflow as tf
a = tf.test.is_built_with_cuda()  # 判断CUDA是否可以用
b = tf.test.is_gpu_available(
    cuda_only=False,
    min_cuda_compute_capability=None
)                                  # 判断GPU是否可以用
print(a)
print(b)

输出结果都是True,代表CUDA和GPU可用
在这里插入图片描述

python
import tensorflow as tf
sess = tf.compat.v1.Session(config=tf.compat.v1.ConfigProto(log_device_placement=True))

若包含GPU信息,则使用了GPU。
在这里插入图片描述

通过查看GPU的利用率验证

打开任务管理器,点击“性能 ”,找到你自己英伟达显卡的GPU那一栏,点击一下,可以显示GPU的利用情况,正常情况下你没运行什么程序,GPU利用率什么的都是0,没有波澜,然后你运行代码,会发现GPU利用率开始变化了,以tensorflow的代码为例子。

import tensorflow as tf

with tf.device('/cpu:0'):
    a = tf.constant([1.0, 2.0, 3.0], shape=[3], name='a')
    b = tf.constant([1.0, 2.0, 3.0], shape=[3], name='b')
with tf.device('/gpu:1'):
    c = a + b

# 注意:allow_soft_placement=True表明:计算设备可自行选择,如果没有这个参数,会报错。
# 因为不是所有的操作都可以被放在GPU上,如果强行将无法放在GPU上的操作指定到GPU上,将会报错。
sess = tf.compat.v1.Session(config=tf.compat.v1.ConfigProto(allow_soft_placement=True, log_device_placement=True))
# sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
sess.run(tf.compat.v1.global_variables_initializer())
print(sess.run(c))

Windows系统用Anaconda安装tensorflow和pytorch的gpu版本_第54张图片

后记

因为之前的电脑总是系统出故障,格式化后配环境配了有三四遍,帮同学也配了几遍,终于买新电脑了,所以又配置了一遍,顺便记录一下配置过程。感觉之前不理解的东西也在这么多此的配置过程中明白了原理,所以安装失败不要怕!大不了卸载再重装,你会更加熟练的~
(希望电脑不要再坏了。。

你可能感兴趣的:(pytorch,tensorflow,pytorch,tensorflow,windows)