软硬件

  • 显卡:A4000(对应的算力为 8.6)
  • 系统:Ubuntu 18.04 LTS
  • 驱动:NVIDIA DRIVER 470 - CUDA11.4
  • 参考链接1:显卡算力查询官网
    这里介绍的显卡算力主要是要和 CUDA - cuDNN 匹配(如果要使用 cudnn8.x 算力的显卡对 cudatoolkit 的要求是 11.x)。

conda install

使用该命令,如果不匹配,没有找到对应的包,默认选择安装 CPU 版本!对应的各个版本截图示意如下。

1.8.0 (太早之前的就不测试了)

# CUDA 10.2
conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=10.2 -c pytorch# CUDA 11.1
conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c conda-forge

CUDA 10.2

CUDA 11.1


这里需要注意下:PyTorch 1.8.0 可以和 CUDA 11.1 匹配!

1.8.1

# CUDA 10.2
conda install pytorch==1.8.1 torchvision==0.9.1 torchaudio==0.8.1 cudatoolkit=10.2 -c pytorch# CUDA 11.3
conda install pytorch==1.8.1 torchvision==0.9.1 torchaudio==0.8.1 cudatoolkit=11.3 -c pytorch -c conda-forge

CUDA 10.2

CUDA 11.3


经测试,将 cudatoolkit 版本降至 11.1 后,可以成功下载 GPU 版,11.2 不行。

1.9.0

# CUDA 10.2
conda install pytorch==1.9.0 torchvision==0.10.0 torchaudio==0.9.0 cudatoolkit=10.2 -c pytorch# CUDA 11.3
conda install pytorch==1.9.0 torchvision==0.10.0 torchaudio==0.9.0 cudatoolkit=11.3 -c pytorch -c conda-forge

CUDA 10.2

CUDA 11.3


同上:经测试,将 cudatoolkit 版本降至 11.1 后,可以成功下载 GPU 版,11.2 不行。

1.9.1

# CUDA 10.2
conda install pytorch==1.9.1 torchvision==0.10.1 torchaudio==0.9.1 cudatoolkit=10.2 -c pytorch# CUDA 11.3
conda install pytorch==1.9.1 torchvision==0.10.1 torchaudio==0.9.1 cudatoolkit=11.3 -c pytorch -c conda-forge

CUDA 10.2

CUDA 11.3


同上:经测试,将 cudatoolkit 版本降至 11.1 后,可以成功下载 GPU 版,11.2 不行。

1.10.0

# CUDA 10.2
conda install pytorch==1.10.0 torchvision==0.11.0 torchaudio==0.10.0 cudatoolkit=10.2 -c pytorch# CUDA 11.3
conda install pytorch==1.10.0 torchvision==0.11.0 torchaudio==0.10.0 cudatoolkit=11.3 -c pytorch -c conda-forge

CUDA 10.2

CUDA 11.3


可以看到,对于比较新的 PyTorch 版本,是可以使用 conda install 安装 GPU 版本的!而之前相对比较老的版本就不行。

1.10.1

# CUDA 10.2
conda install pytorch==1.10.1 torchvision==0.11.2 torchaudio==0.10.1 cudatoolkit=10.2 -c pytorch# CUDA 11.3
conda install pytorch==1.10.1 torchvision==0.11.2 torchaudio==0.10.1 cudatoolkit=11.3 -c pytorch -c conda-forge

CUDA 10.2

CUDA 11.3

总结

1.10.0 之前的 PyTorch,都无法使用 CUDA 11.x (更正:后来经过测试,将 cudatoolkit 版本改为 11.1 后都能成功安装了!),但是可以使用 CUDA 10.x

这里说下 CUDA 11.xCUDA 10.x 的区别:支持的算力不同,如果要使用 cuDNN 进一步加速,而显卡算力和安装的 CUDA 不匹配,就无法使用。本次实验使用的显卡为 A4000,支持的算力为 8.x,对应的 cuDNN 版本也应该为 8.x 才行。

import torch
print(torch.cuda.is_available(), torch.cuda.device_count())from torch.backends import cudnn
print(cudnn.is_available())
print(cudnn.is_acceptable(torch.rand(1,).cuda()))


升级为 CUDA 11.x 后,再次验证:

pip install

使用 pip install 基本都没有问题,能够成功安装上 GPU 版本,需要注意的还是上述那点,CUDA 版本要和显卡算力相匹配,否则无法使用 cuDNN 进一步加速运算!

对于无法使用 conda install 的版本,使用 pip install 安装是一个很好的解决方案,唯一的不足之处是,pip install 安装的包只保留在当前虚拟环境中,每次都需要重新下载。而 conda install 时,首先会从 ~/anaconda3/pkgs/ 里面寻找,如果找到,直接复制一份到当前虚拟环境,不用重新下载,所以速度基本是以秒计算;如果没有,那么还是会先将包下载缓存到该目录下,然后执行相同的复制操作。

以下只是个人想法!!!

有了以上的知识之后,我们可以这样操作,将可以使用 pip install 安装而无法使用 conda install 的包(比如 PyTorch1.8.1-CUDA 11.3)复制到 ~/anaconda3/pkgs/ 目录下,然后就可以使用 conda install 安装了,但是需要注意一个小细节,就是修改 CUDA 的版本,因为 pip install 只提供 CUDA 11.1,所以对应到的命令就是:

conda install pytorch==1.8.1 torchvision==0.9.1 torchaudio==0.8.1 cudatoolkit=11.1

一直没有注意到这个细节:为什么使用 conda install 安装不成功,而使用 pip install 就能成功呢?这里官方真的是好好地坑了我们一把!!!其实并不是 conda 本身的问题,而是因为我们指定的 cudatoolkit 版本不对!也就是官方提供的版本不对!!!因此,如果需要使用 conda install 时,只需要将 cudatoolkit 的版本指定为 pip 里面的即可!!!举个栗子:

官方提供的 cuda 安装命令:

# CUDA 11.3
conda install pytorch==1.8.1 torchvision==0.9.1 torchaudio==0.8.1 cudatoolkit=11.3 -c pytorch -c conda-forge

经过上面的实验,我们知道,如果使用上面的命令来安装是不行的,我们这里想要的是 PyTorch 1.8.1 对应的 CUDA 11.x,这样才能和机器的算力匹配,使用 cudnn 加速运算,而这里官方只给我们提供了最新的 11.3,直接复制运行就出错了,直接给我们整个 cpu 版本的!让我们来看看官方提供的 pip 命令是怎样的:

# CUDA 11.1
pip install torch==1.8.1+cu111 torchvision==0.9.1+cu111 torchaudio==0.8.1 -f https://download.pytorch.org/whl/torch_stable.html# CUDA 10.2
pip install torch==1.8.1+cu102 torchvision==0.9.1+cu102 torchaudio==0.8.1 -f https://download.pytorch.org/whl/torch_stable.html# CUDA 10.1
pip install torch==1.8.1+cu101 torchvision==0.9.1+cu101 torchaudio==0.8.1 -f https://download.pytorch.org/whl/torch_stable.html

看到了吗?是 CUDA 11.1,而不是 CUDA 11.3 !!!因此,我们只需要把 conda install 后面的命令稍微改一下,完全可以运行成功:

conda install pytorch==1.8.1 torchvision==0.9.1 torchaudio==0.8.1 cudatoolkit=11.1 -c pytorch -c conda-forge

来对比一下吧。

  • 没有修改之前的效果
  • 修改之后的效果:

终于把这个困惑给解决了!

!最终方案

使用 conda install 时,不指定 cudatoolkit 的版本时,默认会安装与 PyTorch 版本相匹配的最新 CUDA,因此不需要上面那样反复地尝试!

经过这次的实验捣鼓,终于理解了之前一个博客大佬所说的。如果我们没有 cuda 编程需求的话,根本就不需要安装什么 cudatoolkit cudnn,只需要安装配置好 NVIDIA 驱动即可!我们在安装 PyTorch 的时候早就已经帮我们打包好了!!!没有上述需求的话还需要安装吗?不需要了!

可以通过将 CUDA 从系统配置变量中移除来检验。

补充

  • 如果使用的是 pip install,是不会安装 cudatoolkit 的,因此需要在服务器上配置 CUDA 环境。
  • 如果你只会用到 conda install 来进行安装,那么不在服务器上安装配置 CUDA 也是可以的。

PyTorch-GPU 安装之 conda install pip install相关推荐

  1. Win10+Python3.6下Pytorch安装(基于conda或pip)

    Pytroch简介 Pytorch是Facebook的AI研究团队发布了一个Python工具包,专门针对GPU加速的深度神经网络(DNN)编程.Torch是一个经典的对多维矩阵数据进行操作的张量(te ...

  2. python matplotlib库安装出错_使用pip install Matplotlib时出现内存错误

    我使用的是Python2.7,如果我试图安装Matplotlib,如果我使用"pip install Matplotlib",就会出现这个错误Exception: Tracebac ...

  3. python自动安装pip教程_谈谈全自动安装常使用的pip install的原理及作用!!!

    正如第一句所说: pip is the package installer for Python. You can use pip to install packages from the Pytho ...

  4. python安装默认路径_Python pip install如何修改默认下载路径

    Python pip install如何修改默认下载路径 pip动不动就下载数百M的文件.这些文件默认在C:盘,那么为了节省空间需要修改这些路径: 打开cmd命令窗口.输入: python -m si ...

  5. 安装 python 虚拟环境 > pip install virtualenv -i https://pypi.tuna.tsinghua.edu.cn/simple/报错解决办法

    安装 python 虚拟环境 > pip install virtualenv -i https://pypi.tuna.tsinghua.edu.cn/simple/报错解决办法 [root@ ...

  6. pytorch gpu安装 torch.cuda.is_available()是true才成

    由于之前装了个假的gpu版本,所以来记录一下正确的怎么安装. 先看NVIDIA控制面板-帮助-系统信息-组件 看驱动版本,我的是9.0. 或者是  cmd输入NVIDIA-smi看 我的版本是385. ...

  7. pytorch gpu安装教程(Perfect完美系列)

    文章目录 前言 `一.安装Pytorch-GPU版(超详细教程)` 扩展阅读-GPU.CUDA Toolkit.cuDNN关系 二.安装Anaconda(环境管理) 下载链接 Anaconda命令行总 ...

  8. Win10下NVIDIA-GForce940MX-Python3.9.7的Pytorch包安装经验分享(pip安装法)

    ----------------更新于2022.4.10---------------- 内容提要:安装Pytorch是进行人工神经网络深度学习必备的程序pag,在这里借用3W原则给大家进行解释. W ...

  9. (2023)CUDA11.7+Python3.9+Pytorch GPU安装

    (补档)(自用留存)(有问题欢迎互相交流) 一.安装Anaconda 官网链接(默认新版):Anaconda | The World's Most Popular Data Science Platf ...

最新文章

  1. 黑盒测试之等价类测试
  2. 批量创建同义词并授权
  3. 使用ABAP Push Channel(APC)开发的乒乓球游戏,可双打
  4. 贝叶斯 朴素贝叶斯_手动执行贝叶斯分析
  5. sas 文件传输 本地 服务器,SLIM SAS SFF-8654服务器转换线让传输更容易!
  6. Laravel Migrate
  7. ios学习:Xcode工具
  8. C++11 继承构造函数
  9. python 决策树回归参数_python决策树之CART分类回归树详解
  10. python输出结果换行_如果Python中有很多换行,可以选择使用...表示多行内容...
  11. os.getcwd()
  12. java inflater_Android下LayoutInflater的正确使用姿势
  13. 渐开线曲线方程c语言,proe常用曲线方程大全
  14. 浙江大学内部Python教程(教材PDF, PPT课件, 源码)
  15. 如何关闭445端口 两种方式教你关闭445端口
  16. 【科技文献检索】CNKI中国知网检索
  17. lombok报错Ambiguous method call. Both
  18. 零基础想要快速的学好3D游戏建模,兼职接单私活,来看业内人士的分析
  19. 关于点焊,你知道多少
  20. java版林地府邸种子_最好玩的5大林地府邸种子,手机党玩家的福利!

热门文章

  1. oracle centos 7 安装教程,centos7.2安装oracle图文教程
  2. 当代年轻人 618 迷惑行为大赏
  3. (六十三)HIDL C++ HIDL Java
  4. 【每日早报】2019/11/06
  5. SRAtoolkit使用
  6. 数据库查询语句SQL中like、%、-的区别
  7. c语言多门平均成绩,C语言:求平均成绩
  8. 做网赚努力很重要,但是对于认知能力更重要
  9. 提高患者满意度的权威指南
  10. iphone测试cpu性能的软件,iPhone 6S三大性能实测:恐怖黑科技!