记录一下我这儿用到的组建:ubuntu18+Anaconda+2070super驱动+cudaToolkit10.2+Pytorch1.5
踩坑注意
- 首先装驱动建议选稳定版本的驱动,然后驱动的时候CUDA好像就安装好了,不过这个CUDA是最新的,有可能pytorch还没适配上,所以要调整一下CUDA(截止到更新,最新CUDA是11.2,pytorch用的是11.0)
- 装完CUDA要看对应的cudnn,这个要和CUDA对应,好像
11.0
、11.1
、11.2
对应的cudnn是一样的。 - CUDA和cudnn我是装到了根目录,然后因为根目录留的空间不够,所以报了空间不足的错,建议留出足够多的空间用于安装。
- 最后装pytorch没啥好说的,反正目前中科大源没有了,如果有的话可以几个源ping一下看看哪个快。
20感觉有些地方还是不兼容,不是非常顺手。换回18了
一共分为几步,参考:https://blog.csdn.net/gdymind/article/details/82153643
安装Anaconda(没有程序需求可以装miniconda)
从官网下sh版本的直接安装在自己的家目录
安装完在家目录下面会有一个anaconda文件夹
在ubuntu上安装好anaconda后,如果输入conda命令报错,大概率是没有把conda加入环境变量
所有可执行二进制文件都存放在:~/anaconda3/bin
在终端输入:sudo gedit ~/.bashrc
(命令行模式可以使用vim ~/.bashrc
进行打开,如果只是在自己的家目录操作好像不需要使用sudo)
在 ~/.bashrc最后一行加入 export PATH=~/anaconda3/bin:$PATH
然后保存退出
命令行界面输入source ~/.bashrc
激活环境
测试:
(rna) dicklim@ubuntu:~$ conda -V
conda 4.8.2
在ubuntu实机上测试了可以使用
配置Anaconda(20200524测试可用)
配置过程主要就是替换channel,因为官网channel太慢了,所以改用清华的源。
清华镜像站里的方法,不是非常好,用生成condarc之后去改,我试了几次没成功,所以我我还是决定用命令行模式来修改
基本语法:conda config --add channels https://
后面跟要加的url
下面贴一些比较常用的命令:
# Anaconda Python 免费仓库
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 Forge
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/conda-forge/
# msys2
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/msys2/
# bioconda
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/bioconda/
# menpo
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/menpo/
# pytorch
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
# for legacy win-64
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/peterjc123/
# 这句代码感觉不是必要
conda config --set show_channel_urls yes
这儿加镜像我觉得是要啥加啥,没必要直接全加(不知道会不会拖慢速度)
像free和main都是必要的,剩下pytorch是深度学习用的,bioconda是生信的,conda-forge查了一下是个更快的社区之类的?
最后那个show_channel_urls好像是在家目录生成一个url文件,感觉这句代码不是非常必须。
安装Nvidia 驱动
这步反正就是去官网下载需要的组件,这个没啥好说的
- 一个特殊的做法:ubuntu中有个软件和更新-->附加驱动,里面可以显示可按转的驱动,我这儿是440的测试版和435的稳定版。我装的稳定版(啊下的好慢,下次一定要配好ssr再整活。)
测试:glxinfo | grep rendering
如果显示yes就是下好了,如果显示没这个命令就用sudo apt-get install mesa-utils
安装。
这儿要把用户调成需要密码登陆,不然会和驱动冲突,然后无限重启。
还有个避免无限登陆的方法:是手动用run文件升级,留个参考:
https://blog.csdn.net/lihe4151021/article/details/90083431
进入tty1界面可能会出现中文乱码,解决方案
https://blog.csdn.net/lihe4151021/article/details/90048918
安装CUDA Toolkit
装pytorch的时候好像会直接装cuda所以这个似乎可以省略?
这个去网站https://developer.nvidia.com/cuda-toolkit
选好对应的版本下载就行了,我选的10.2因为Pytorch上只有10.2的我不知道更新的11支持不支持。
然后找到对应需要的配置之后按照那串代码下就行了。
我选的Linux-->x86_64-->Ubuntu-->18.04-->deb(惊!不知道20能不能用)最后还是换回18了
好的我装完了,因该是可以的,那就凑和着用了。(1.7G,我心疼的抱住我的小硬盘呜呜呜
)
测试:
(base) dick@dick-System-Product-Name:~$ cat /usr/local/cuda/version.txt
CUDA Version 10.2.89
然后是cuDNN
绝望怎么这个也可以在清华源下,那就是说也许可以conda install cudnn?
好像是要的,我就装一下试试
https://developer.nvidia.com/rdp/cudnn-download在这儿找到要的对应的包,我是for CUDA 10.2,还是下的ubuntu18.04的版本,下那个Runtime Library。
下下来是个deb包,然后用dpkg安装
命令是:sudo dpkg -i <name>
验证可以在python里验证
最后是Pytorch了
直接去官网找到命令复制过来就行了。
conda install pytorch torchvision cudatoolkit=10.2
注意原本指令里面是有-c pytorch
的,导致channel首选pytorch,为了全从清华源下,这个-c要去掉
这玩意换了清华源因该 问题不大,刚刚冒出来一个HTTP 000 CONNECTION FAILED for url
,估计是网络波动,再试一下就好了。
好吧pytorch还是下的慢,然后在安装里面会显示要装哪个版本,去清华源把对应的版本下下来。
我差pytorch和cuda toolkit(虽然我配置过cuda不过他要那就只能重弄了)
我找的是
然后是
conda install ./pytorch-1.5.0-py3.7_cuda10.2.89_cudnn7.6.5_0.tar.bz2
conda install ./cudatoolkit-10.2.89-hfd86e86_1.conda
Python验证程序
import torch
# 若正常则静默
a = torch.tensor(1.)
# 若正常则静默
a.cuda()
# 若正常则返回 tensor(1., device='cuda:0')
from torch.backends import cudnn
# 若正常则静默
cudnn.is_available()
# 若正常则返回 True
True
cudnn.is_acceptable(a.cuda())
# 若正常则返回 True
True