windows / linux 安装CUDA+Pytorch环境+注意事项

前言:

       最近跑代码发现我的环境配置有一些问题,所以需要仔细检查一下我的CUDA环境以及重装Torch,由于也在服务器的linux环境重装了torch,有很多重复的步骤,总是记不住,所以写一篇博客来记一记,以后方便自己查看。

正文:

  前提:主机已安装Anaconda,具备显卡。

    1.查看及安装自己电脑适配的CUDA驱动器+cudann。

    参考这篇博客,这里列一些注意注意事项,建议先看了再参考:

  (a) 如下图所示,右侧的支持驱动版本11.0.228是支持的最高版本,你可以装稍微低一点的版本,但是不能高于此版本。比如我就是装的10.1的版本,可以正常使用。

 

   (b)网上可以看到下表,我的驱动程序版本是452.56(也就是可以支持11.0.3),但是还是那句话,这个最高版本,对于容易冲动一股脑就下载最高版本的人来说,下载低一点的比较好,但也不是多低都可以,比如目前RTX3060不支持CUDA 11以下版本。

 

  (c)Cudann由于下载速度太慢,建议大家机智上网,我的火狐浏览器即使机智上网速度依然很慢,所以用的谷歌,当然,也可能因人而异。

         注意一定要下载匹配自己刚才下载的CUDA版本,不然。。。就太惨啦!

  

  2 Conda新建环境安装pytorch(快速安装,速度可观

  如果你之前给Conda配置过其他源,可能会在创建虚拟环境过程中出一些很奇怪的错误,错误的最后提示是要不要上传当前错误情况,这里提前避免一下,linux 和 windows 下面操作相同(两个环境我都跑了,建议大家直接食用。

  2.1 恢复默认源-创建虚拟环境。

# linux 系统如果从根目录直接想访问conda的话,可以先输入下面两句话,就可以正常使用conda命令了

echo 'export PATH="~/anaconda3/bin:$PATH"'>>~/.bashrc

source ~/.bashrc

# 下面创建步骤 windows 和 linux 相同

conda config --remove-key channels # 恢复默认源
conda create -n mynewenv python=3.6.5
# 创建python版本为3.6.5的虚拟环境,环境名字叫做mynewenv,你可以换一个你想要的名字

  2.2 创建torch环境

# 下面步骤 windows 和 linux 相同

conda activate mynewenv # 进入刚才创建的虚拟环境

# 添加源
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 --set show_channel_urls yes

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/

# 输入命令下载torch,参考网址:https://pytorch.org/
# 选择适合你cuda版本的命令,注意命令后面的-c python要删掉!!!
# 注意:cuda10.1好像仅针对1.7.1版本的torch可用,我于2022/1下载最新的无法使用...

###########################################################
# 2023/1更新:之前的conda命令会自动下载cpu版本的pytorch,建议linux环境下使用pip下载whl指定cuda版本,来下载GPU版本的torch

# 使用这个网址,离线下载你需要的cuda环境的torch版本,https://pypi.org/project/torch/#files,这个网址下载torchvision:https://pypi.org/project/torchvision/#files 下面的例子自动从官网下载(速度极慢):

pip install torch1.3.0+cu101 torchvision0.4.1+cu101 -f https://download.pytorch.org/whl/torch_stable.html

# 如果不是指定版本,可以直接下载指定cuda版本的torch-比如cuda10.1版本
pip install torch torchvision torchaudio --extra-index-url https://download.pytorch.org/whl/cu101


# conda install pytorch==1.7.1 torchvision==0.8.2 torchaudio==0.7.2 cudatoolkit=10.1 #我发现windows和linux命令是相同的... 

     删除官网命令后面的-c python之后的速度会快很多!否则得下到猴年马月啊,因为-c python的意思是使用官网源下载,不是我们添加的清华源,所以速度会慢很多,但是由于使用的其他源,也会有一些问题出现。比如说,缺少一些包之类的,可以输入conda list检查一下重要的三个包在不在。(pytorch  / torch, torchvision , torchaudio, cudatoolkit)

  2.3 检查torch是否安装成功

#windows 与 linux一致: 在刚才的虚拟环境下 进入python
python
# 执行代码 import torch
# 判断torch是否安装成功 x
= torch.rand(5,5)
print(x)
# 判断cuda是否安装成功可正常与torch共同使用
torch.cuda.is_available()
# 如果返回的是ture,则结束啦!正常的!后面会记录一些你可能会出现的错误,比如这里返回false

 

  3 一些问题的解决方法

  3.1 输入torch.cuda.is_available() 返回 false 无其他报错

  解决办法:新建虚拟环境,重装torch。(前提:确认我的cuda版本支持以及cudann版本匹配,两者安装路径及步骤正确。

 

  3.2 输入torch.cuda.is_available() 返回 false 有报错

  报错信息如下图所示,提示cuda可能有一些问题。

   解决办法:将安装的cuda驱动unload再reload,建议自行搜索教程。

 

  3.3 输入nvidia-smi,报错:Failed to initialize NVML: Driver library version mismatch

  解决办法:同3.2

 

  4 记录一些额外的conda指令

# 以下命令 windows 和 linux一致

# 删除虚拟环境
conda remove -n mynewenv --all

# 退出虚拟环境
conda deactivate

# 如果不能正常进入虚拟环境按照下面两个步骤:
# step 1
source activate mynewenv
# step 2
conda activate mynewenv

# 查看已有的虚拟环境
conda-env list # linux
conda info -e  # windows

# 备份/ 克隆虚拟环境
conda create -n newenv --clone olden

 

  5 参考博客:

   https://www.cnblogs.com/guan-zl/p/12986253.html

   https://blog.csdn.net/suiyueruge1314/article/details/89472914 

ps:很久之后来用这篇文章,发现图片都不可见了,后续搜索问题后知道,之前的直接复制到这里的图片尽量还是保存到本地,然后使用“上传图片”功能来添加图片,当然以往的未显示图片的博客可以重新编辑-此时图片又可见了,再使用【上传图片】功能更新博客即可。

 

posted @ 2021-01-14 15:17  achived  阅读(1508)  评论(0编辑  收藏  举报