系统:Ubuntu20.04
已经安装过Anaconda
时间:2021/6/14
====================
一、根据nvidia-smi
命令得知
当前电脑已经安装nvidia驱动版本为460.80(见图一)
对应CUDA ToolKit最高版本为11.2.2(对应版本见图二)
图一
图二
在安装pytorch之前电脑上已经安装过从nvidia官网上下载的CUDA TooKit和Cudn,并且CUDA TooKit版本为最高版本11.2.2。
在Annconda中新开辟一个环境(python=3.8)准备安装pytorch,pytorch官网上提供最新的下载命令如下
conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c nvidia
cudatoolkit最新版本是11.1,而我电脑上已经安装过CUDA TooKit 11.2.2。
pytorch官网上的cudatoolkit和nvidia官网上的CUDA ToolKit不太一样,具体见
https://blog.csdn.net/qq_39929304/article/details/114264400#commentBox
网上说这没关系,因为Anaconda已经把新开辟的环境与原来的本地环境独立开了,在新环境下会使用在新环境下安装11.1版本的cudatoolkit。我也是这样想的,也好不容易把pytorch下载下来了。
这里要注意当前nvidia驱动对应的CUDA Toolkit最新版本是11.2.2,因此使用11.1,11.0肯定都没关系
最新版的pytorch从官网上下载很慢,可以参考
https://blog.csdn.net/qq_41936559/article/details/102699082
如果参考网址中,使用离线下载方式,最后的调用下面的命令
conda install pytorch torchvision torchaudio cudatoolkit=11.1
会有下面的错误提示,说是他们频道中没有这样版本的包
我到https://anaconda.org
官网查找cudatoolkit的文件,发现确实没有对应的11.1版本(具体是11.1.74)的。不过从最上面的下载命令可知这个版本的cudatoolkit是从nvidia官网上下载的(-c nvidia)
NOTE: 'nvidia' channel is required for cudatoolkit 11.1
conda install pytorch torchvision torchaudio cudatoolkit=11.1 -c pytorch -c nvidia
如果pytorch1.8.1选择CUDA为10.2,则不会从nvidia官网上下载,并且pytorch为旧版本选择CUDA为11.1,也不会从nvidia官网上下载(无 -c nvidia)
pytorch1.8.1选择CUDA为10.2
pytorch为旧版本选择CUDA为11.1
二、我当时不知道怎么把nvidia的网址添加到cuda的频道(channel)上。既然装失败了于是重新创建新的环境(python=3.7)。我下载了pytorch历史版本,pytorch 1.7.0,在新环境下执行下面的命令
# CUDA 11.0
conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=11.0 -c pytorch
pytorch历史版本网址:https://pytorch.org/get-started/previous-versions/
旧版本pytorch下载速度比较快,没有选择离线安装。在线安装完成后,在python命令行中执行import torch
又是报错。于是我干脆把原来环境中的CUDA ToolKit卸载了
sudo /usr/local/cuda-11.2/bin/cuda-uninstaller
再重新创建新的环境(python=3.7),下载pytorch 1.7.0
conda install pytorch==1.7.0 torchvision==0.8.0 torchaudio==0.7.0 cudatoolkit=11.0 -c pytorch
这次下载成功!判断pytorch是否安装成功的命令如下
import torch
print(torch.__version__)
print(torch.cuda.is_available())
三、总结:
1、pytorch最新版(1.8.1)的cudatoolkit依赖于nvidia官网提供的,因此离线下载需要在cuda中添加相应的channel(我不会)
2、原环境中安装的CUDA Toolkit(11.2.2)会对Anaconda中安装的cudatoolkit ( != 11.2.2,如11.1)有影响,至少从我安装的经验来说是这样的。
如果上面安装实践与你安装过程有出入,欢迎在留言区交流。