2022.04.26

  • 利用conda安装pytorch,有时候安装的路径不一定是我们想要的。可以通过指定安装路径避免该问题。
  • 安装pytorch,有时直接采用官网给定的指令即可安装成功,有时候不可。尝试了几种方法,最终成功。

1. conda创建环境


1.1 创建环境

  • 普通指令

该指令因为你当前所在的目录问题,可能会安装到其他路径,而不是anaconda中的目录

  1. conda create --name 环境名称 python=3.6

image.png

  • —prefix=指定路径+环境名称

    1. conda create --prefix="xxx/testEnv" python=3.6

    1.2 更改下载源

  • 清华源

    1. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
    2. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
    3. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
    4. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
    5. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge
    6. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2
    7. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda
    8. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo
    9. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch
    10. conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/simpleitk
  • 中科大源

    1. conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/main/
    2. conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/
    3. conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/conda-forge/
    4. conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/msys2/
    5. conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/bioconda/
    6. conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/menpo/
    7. conda config --add channels https://mirrors.ustc.edu.cn/anaconda/cloud/pytorch/

    2. 安装pytorch


2.1 官网获取安装指令安装

https://pytorch.org/get-started/previous-versions/
image.png

  1. conda install pytorch==1.8.1 torchvision==0.9.1 torchaudio==0.8.1 cudatoolkit=10.2 -c pytorch

2.2 验证

输入如下指令:

  1. # 终端输入
  2. python # 调用
  3. import torch
  4. import torchvision
  5. x = torch.rand(5,3)
  6. print(x)
  7. # pycharm
  8. import torch # 能否调用pytorch库
  9. print(torch.cuda.current_device()) # 输出当前设备(我只有一个GPU为0)
  10. print(torch.cuda.device(0)) # <torch.cuda.device object at 0x7fdfb60aa588>
  11. print(torch.cuda.device_count()) # 输出含有的GPU数目
  12. print(torch.cuda.get_device_name(0)) # 输出GPU名称 --比如1080Ti
  13. x = torch.rand(5, 3)
  14. print(x) # 输出一个5 x 3 的tenor(张量)

image.png
成功!

3. 坑


3.1 问题 1

  • 当我采用指令(conda install pytorch==1.8.1 torchvision==0.9.1 torchaudio==0.8.1 cudatoolkit=10.2 -c pytorch)安装时,报下面错误,未检测到CUDA,但其实已经安装了,可能是torchvision的版本啥的没对应上。

image.png

  • 改用下面指令
    • 取消指定torchvision,安装时自动检测相应的版本安装。
    • 取消“-c pytorch”,此时采用的是国内的源下载。
      1. conda install pytorch==1.8.1 torchvision cudatoolkit=10.2

      3.2 问题 2

      如下图,这是 pytorch 安装时 cudatoolkit 版本比 已经安装的CUDA 高,当时:机子上装的CUDA 11.3,而cudatoolkit 是 11.3.1.
      python中安装的pytorch对应的CUDA版本和服务器上的显卡驱动对应的CUDA版本不兼容,显卡驱动对应的CUDA版本应当>=pytorch对应的CUDA版本。
      image.png