Ubuntu14.04系统下的Pytorch安装

时间:2023-01-20 06:27:59

刚开学一个月,因为各种原因,前前后后装了有3遍Caffe而且每一遍都是不同的错误,而后安装了Pytorch框架。折腾了很长时间,记录下这些坑!!
因为框架GPU什么的都是需要的所以先说公共的部分,先说Pytorch框架的安装。
我的百度云分享:http://pan.baidu.com/s/1gfMU5zl 密码:qp6f
这是文件夹里所包含的文件,除了显卡驱动需要自己根据自己显卡的版本从官网下载,其他均可在百度云本地下载。
Ubuntu14.04系统下的Pytorch安装

1.显卡驱动的安装

首先需要去Nvidia官网下载显卡驱动:
Ubuntu14.04系统下的Pytorch安装
选择适合自己显卡的,本机是GTX 970,所以就以GTX 970 为例。选择完型号和平台以后:
Ubuntu14.04系统下的Pytorch安装

直接下载就行了。
下载完的.run文件,在该文件所在目录下打开终端,输入:

sudo sh NVIDIA-Linux-x86_64-384.90.run -no-x-check -no-nouveau-check

-no-x-check : 我在安装过程中不加这句有遇见报错,Drivers X severice wrong, 说X服务已经开启而不能安装,所以要关闭 X 服务。

-no-nouveau-check : 这个是为了保险起见,以为有的重装系统后会默认是nouveau驱动,这个驱动不禁止的话会有一系列问题。

2.禁用nouveau

首先输入下面的命令来创建一个名字叫blacklist-nouveau.conf的关闭文件:

sudo gedit /etc/modprobe.d/blacklist-nouveau.conf

然后再这个空白文件中输入下面指令后保存退出:

blacklist nouveau options nouveau modset=0

下面可以来检验是否正确禁止了nouveau驱动:

sudo update-initramfs -u
sudo lspci | grep nouveau

如果输入以后什么都没输出,那么就说明禁止成功了。

sudo reboot

3.CUDA 8.0安装

首先要先去NVIDIA官网去下载相关的CUDA,但是我看最新的CUDA版本好像只有16.04及17.04版本的了,14.04版本的没有了,所以大家也可以点击这里下载(我的百度云分享:http://pan.baidu.com/s/1gfMU5zl 密码:qp6f)
官网下载的话要选择runfile(local)的那个。选择在你下载好的cuda_8.0.44_linux.run文件目录下输入:

sudo sh cuda_8.0.44_linux.run

输入以后可以看见左下角有一个more(0%),相当于一个安装协议,需要我们手动往下移(直接按q就可以跳过了),一直移到more(100%)时,会有:

Do you accept the previously read EULA?
accept/decline/quit:

在后面输入accept就行了。
第二个问题是

Install NVIDIA Accelerated Graphics Driver for Linux-x86_64.384.90

(y)es/(n)o/(q)uit:

这个问题因人而异,我也看博客是说因为CUDA和显卡版本是有想对应的,所以建议先禁止Nouveau驱动以后直接安装CUDA,然后再这个问题上回答yes,系统会自动下载匹配的显卡驱动,当然了,我是先安装的驱动,再安装的CUDA,不过没有出现进不去界面的问题。如果需要则回答yes,如果是先安装的显卡驱动那就直接no就好了。

后面的问题就一路yes就可以了。

安装完成了要在profile文件中添加环境变量:

sudo gedit ~/.bashrc

在文件末尾写入:

export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64/:/usr/local/cuda/lib64:$LD_LIBRARY_PATH
export PATH=/usr/local/cuda-8.0/bin:/usr/local/cuda/bin:$PATH

Finally:

source ~/.bashrc

以上CUDA8.0就安装完成了,下面是验证安装是否成功:
找到 /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery 文件夹下输入:

sudo make
./deviceQuery

输出很多信息,就像下图一样,最后一条显示是 Result = PASS 就说明安装成功了。
Ubuntu14.04系统下的Pytorch安装

4.cudnn 安装

首先我们要下载cudnn的压缩包名为:cudnn-8.0-linux-x64-v5.1.tgz,然后可以手动解压,也可以依次输入:

sudo tar xvf cudnn-8.0-linux-x64-v5.1.tgz
cd ~/Downloads/cuda/lib64 #若报错,说明路径和我的不一样,就改为cuda下面lib64文件夹的路径就可以了
sudo cp lib* /usr/local/cuda/lib64/
cd ~/Downloads/cuda/include #若报错,说明路径和我的不一样,就改为cuda下面include文件夹的路径就可以了
sudo cp *.h /usr/local/include/
cd /usr/local/cuda/lib64/
sudo chmod +r libcudnn.so.5.1.10
sudo ln -sf libcudnn.so.5.1.10 libcudnn.so.5
sudo ln -sf libcudnn.so.5 libcudnn.so
sudo ldconfig

5.PyTorch 安装

由于ubuntu自带的默认python版本是2.7的(可以直接在命令行中输入python+回车查看),而python3才是未来发展的趋势,python2和python3在某些小细节上面还是有些许不一样的,所以想安装python3.5的:
Ubuntu14.04系统下的Pytorch安装

首先是要把默认的Python从2.7换成3.5,先下载Python3.5

sudo apt-get install python3
aliaspython = '/usr/bin/python3' python --version

这样基本就可以了,直接会输出当前的python版本。
然后按照官网的提示输入命令,可是因为当时在更换python版本以及更新pip版本的过程中做了很多尝试,导致了一些小错误,折腾了好一会,直接输入并没有很顺利的安装完成,第一次是pyyaml文件有问题,第二次是numpy安装总报错。很坑的是修复一个问题你就需要重新输入,文件又要重新下载,一个torch的wheel文件就是接近500M,所以大家可以直接点击http后面的那个网址直接将wheel文件下载到本地,这样就
sudo pip install torch-0.2.0.post3-cp35-cp35m-manylinux1_x86_64.whl
避免每次都要下载的问题了。

pyyaml没有找到这个文件直接:

sudo apt-get install pyyaml

如果报错的是需要额外下载一个库:

sudo apt-get install libyaml-cpp-dev

然后可以直接百度pyyaml,去它的官网下载zip文件,名为:PyYAML-3.12.zip,手动解压,进去目录下运行:

sudo python setup.py install

然后就可以了。
numpy的问题也是一样的处理方式,直接百度numpy,去它的官网找到报错的numpy,ubuntu版本的安装whl,文件,再
sudo pip install numpy-1.13.3-cp35-cp35m-manylinux1_x86_64.whl
安装完成后最后再到下载的torch的wheel文件夹下pip install 就可以顺利安装了.

sudo pip install torch-0.2.0.post3-cp35-cp35m-manylinux1_x86_64.whl
sudo pip install torchvision

—————————————-更新内容————————————————

(当我在另一台电脑上再次安装一个3.6版本python的Pytorch时,按照上述步骤出现了以下错误:

Ubuntu14.04系统下的Pytorch安装

可以看见版本报错,我输入的命令将sudo去掉,变成官方要求的:

pip install torch-0.2.0.post3-cp35-cp35m-manylinux1_x86_64.whl
pip install torchvision

就可以正常安装了。

———————————————————————————————

安装完以后进入Python编译环境输入:

import torch
import torchvision

没有报错就说明Pytorch安装成功了!

Ps: 我们在安装显卡驱动的时候关闭了x service,等到我们安装完以后想进入,nvidia-setting去看我们的GPU的相关信息,可能会报错,告诉你需要root ‘nvidia-xconfig’,这个时候我们只要:

sudo nvidia-xconfig

然后重启就行了!

小彩蛋:
1.安装terminal快捷方式:

sudo pip install nautilus-open-terminal
sudo reboot

2.当安装whl 显示 * is not support on this platform时可以:

python
import python
print(pip.pep425tags.get_supported())

就会出现一个tuple,里面包含了所有合法的格式组合,可以对照着下载。