目录
我使用到的软件:
xftp(管理文件夹)
xshell(命令行功能)
EasyConnect(解决vpn问题)
前言
作为研0小白,当导师分给你4090去跑代码,当你满心欢喜去找师兄创建账号,当你顺利连通远程服务器,当你兴致勃勃打开code准备一展身手的时候,torch.cuda.is_available()->False给你别样的惊喜。这篇博客将会介绍我安装Pytorch的部分历程,希望对你有用。嗯,因为大多数服务器都要求连接校园网使用,但是我现在还在本科院校,所以使用了师兄的EasyConnet账号,如果有读者感兴趣,等我有时间可以出一篇博客介绍下这个软件~
一、CUDA和Cudnn
在这里已经默认你亲爱的师兄师姐为你装好了CUDA和Cudnn,即使没有,作为一台流传久远的古董,想必他的最初拥有者一定为你节省下这些麻烦。奥,如果确实没有你可以出门左转了,很抱歉这篇博客并没有提供这两者的下载教程。
查看CUDA
敲入命令:nvcc -V
反馈:表明CUDA版本为10.1
在这里并没有贴出cudnn版本的查看命令,因为我没使用到~
二、下载torch
1.官网
在上面我们已经知道了CUDA的版本,现在我们需要下载对应CUDA版本的torch。
打开官网,如下界面:
注意:这里显示的是最新的版本,哪怕是显示的最久的版本也为11.8,和我们的不匹配,我们必须找到和我们CUDA匹配的torch版本,所以打开上方的 install previous versions of PyTorch 这里面存放着远古时期的版本。
打开后,出现如下界面:(我这里直接下拉找到了我需要的版本CUDA:10.1)
复制命令行到你的终端上去下载,这个时候你会发现下载进度无比缓慢~如果你忍无可忍,请参考下一小节。
2.离线下载
因为下载的太慢了,大概要一小时左右,忍受不了这龟速,所以我找到了这个网址:
download.pytorch.org/whl/cu101/torch/
但是似乎下面的地址下载的更快~(好吧,有时候快有时候也慢的要死)(据说可以使用p2p下载,读者可以自寻探讨,如果学会了可以后台教教我,感谢!)
download.pytorch.org/whl/torch_stable.html
在以上网址中找到你需要的版本,我需要的版本就是:
你是不是疑惑为什么是这个版本?
因为我在第一部分按照官方给的命令行下载的时候它会显示torch-1.7.1+cu101-cp376……
so,can you understand?
我这里只下载了torch,因为他最大,大概700MB,torchvision和torchaudio大概也就20/30MB,可以使用命令行直接下载。
注意下载完成后,因为我们下载的位置是本地(我们的个人电脑),我需要把这个压缩包拽到我们的服务器上去。我用的是xftp这个软件,可以便捷操作文件管理。注意,你需要拖拽到对应环境目录下的conda-meta中。如下图所示,打开我的anaconda3文件夹。
在里面找到envs文件夹,里面存放了你创建的环境目录。
这是我创建的两个环境,你要找到你需要的环境,点击进去。
在里面找到conda-meta文件夹,里面存放你安装的库。也是你要把下载好的torch压缩包拖拽进去的地方。
拖拽进去之后,在命令行cd到该文件夹后进行解压缩。此时你已经完成了torch的安装。
之后就是按照官方给的命令行安装剩下的库:
conda install pytorch==1.7.1 torchvision==0.8.2 torchaudio==0.7.2 cudatoolkit=10.1 -c pytorch
注意,因为我已经完成了torch的安装,所以上面的torch==1.7.1直接删除变成:
conda install torchvision==0.8.2 torchaudio==0.7.2 cudatoolkit=10.1 -c pytorch
顺利的话,一分钟就可以完成剩下的安装。
OK,安装完成后检查是否可用torch!
import torch # 如果pytorch安装成功即可导入
print(torch.cuda.is_available()) # 查看CUDA是否可用
print(torch.cuda.device_count()) # 查看可用的CUDA数量
print(torch.version.cuda) # 查看CUDA的版本号
这是我出现的结果:
如果你要问我为什么CUDA的版本是11.7,哈哈哈那是因为后面因为算力不匹配等等问题暴露之后 我才发现服务器上还有CUDA11.7的版本。。。所以我改装了对应的torch。如果你想查看你的服务器是否有其他版本的CUDA,可以参考下一小节。
3.查看服务器其他CUDA
cd进入目录:/usr/local
OKOK看到没,这里是CUDA-11.7,我为之前的努力哭死。
你要是问为什么nvcc-V查看到的CUDA版本不一致?
“nvcc查看的就是在电脑中配置的环境变量所指向的CUDA驱动”
感兴趣参考以下博客:
检查pytorch是否安装成功、查看torch和cuda的版本_torch查看cuda版本-CSDN博客
CUDA版本不同:nvidia-smi和nvcc -V_nvidia-smi和nvcc-v的cuda版本不一致-CSDN博客
OK,知道了CUDA版本,我们回头重新安装torch,我真的是哭死,因为网速太慢,倒腾了又几个小时,不过最终安装顺利,参考第二小节过程。
总结
OK,今天是端午,折腾了一下午没搞定,晚上dinner回来又倒腾了两三个小时才顺利解决(主要是网速下载太慢了),希望每一位刚入坑的学生能从我的教训中获取经验,如果对你有帮助我会很高兴~