最近花了两三天左右的时间从零开始配置深度学习的环境,查看了大量的博客,也踩了一些坑,谨以此篇记录一些经验,希望能对志同道合的各位有所帮助
现在官网查看硬件对应的版本,查看网址:https://www.nvidia.com/Download/index.aspx?lang=en-us
查看好所对应的版本后通过添加ppa源的方式下载
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-390 #此处要根据上面查询到的版本适当更改
sudo apt-get install mesa-common-dev
sudo apt-get install freeglut3-dev
安装好后重启,并在终端内输入以下命令行进行测试
nvidia-smi #若出现电脑GPU列表,即安装成功
和显卡驱动安装一致,首先去官网查询自己所需要安装的版本,网址https://developer.nvidia.com/cuda-downloads
在这里我选择的时deb(network)安装的方式,较为简单,先下载deb文件,deb安装包下载好后,按照下载地址中指示代码,进入安装包所在路径进行安装
成功安装完后需要设置环境变量,终端中输入
sudo gedit /etc/profile
在打开的文件末尾,添加以下两行:
#64位系统:
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64\
${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
#32位系统:
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib\
${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
这里有点与官方安装文档稍有不同,需要说明,官方文档里说只需在终端中运行上述两条export语句即可,但如果不将它们不写入/etc/profile文件的话,这样的环境变量在你退出终端后就消失了,不起作用了,所以写入才是永久的做法。
保存文件,并重启。因为source /etc/profile是临时生效,重启电脑才是永久生效。
接着在终端中输入命令行来查看环境变量是否设置成功:
nvcc --version
如果输出了版本信息,则成功,如果显示
The program 'nvcc' is currently not installed. You can install it by typing:
sudo apt-get install nvidia-cuda-toolkit
则可能是环境配置没有成功,需要重新设置
一切就绪后可编译cuda提供的example来验证是否安装成功,网上例子较多,此处不再重复
同先前安装一样,在官网查询对应的版本号,查询地址:https://developer.nvidia.com/cudnn
注意此处需要注册帐号登录后才可下载,我用的是google登录
下载时不要选择那三个deb文件,不知道为什么老是无法安装成功,选择前面的tgz文件进行安装最好,例:
cudnn-10.0-linux-x64-v7.tgz
将此安装包下载好,后解压。接着将文件夹中的两个文件分别复制到对应的文件夹中就好
sudo cp cuda/include/cudnn.h /usr/local/cuda10.0/include/
sudo cp cuda/lib64/libcudnn* /usr/local/cuda10.0/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
查看cudnn是否安装正确:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
若为这样
则正确
(P.S:按照官网教程即可顺利安装,官网教程地址:cudnn安装官网教程)
(补上一段命令,貌似加不加上都可以,附上以作备用)
cd /usr/local/cuda10.0/lib64/#进入路径
sudo rm -rf libcudnn.so libcudnn.so.5 #删除原有动态文件
sudo ln -s libcudnn.so.6.0.21 libcudnn.so.6 #生成软衔接
sudo ln -s libcudnn.so.6 libcudnn.so #生成软链接
老规矩,官网查询,地址: pytorch
许多教程说在“Run this command”下会显示安装PyTorch的命令。如果Ubuntu下已经配置过pip的话,可以直接使用pip命令安装成功PyTorch,但是速度十分缓慢,建议直接到“Run this command”里的下载地址里进行下载,速度很快。
如上图所示,下载torch-0.2.0.post3-cp36-cp36m-manylinux1_x86_64.whl。其中,0.2.0表示PyTorch版本,cp36表示支持Python3.6,cuda80表示支持GPU版本,电脑有GPU的话须选择该项,注意检查是否是自己所需的对应项。
下载完后,进入文件所在的目录进行安装:
pip install torch-0.2.0.post3-cp36-cp36m-manylinux1_x86_64.whl
#如果pip install安装不成功则使用sudo pip3 install 下面note里有提到
同理,安装torchvision
pip install torchvision
#sudo pip3 install torchvision
安装成功后在终端里输入
python
import torch
import torchvision
若无报错,最后输入如图所示:
返回True则成功。
import torch
# 若正常则静默
a = torch.tensor(1.)
# 若正常则静默
a.cuda()
# 若正常则返回 tensor(1., device='cuda:0')
from torch.backends import cudnn
# 若正常则静默
cudnn.is_available()
# 若正常则返回 True
cudnn.is_acceptable(a.cuda())
# 若正常则返回 True
大功告成,环境配置安装就此结束,可以开始愉快的深度学习之旅了
NOTE:
1.读取写入文件/文件夹权限不够时,采用
sudo nautilus
进行操作。
2. 在命令
pip3 install
提示权限不够时,可用命令
sudo pip3 install
继续操作