{昨天服务器里的软件,一不小心被学弟upgrade了,结果导致 GPU Tesla P4 的驱动和 CUDA tookit 的驱动不匹配,结果就悲剧了。加上实验室的服务器(IBM 365 2U)年久失修,无奈之下又只能重装一遍。}
重装的时候,看了一些别的教程:显示自己重新下载安装了GPU的驱动 nvidia-573,安装了驱动之后 nvidia-smi 可以查看到GPU内存的使用情况,但是接下来安装 CUDA-8.0之后,执行 ./deviceQuery 的时候,显示有多个驱动冲突,但是安装 CUDA的时候我并没有安装GPU的驱动。。。。。。网上的各种教程,鱼目混杂,良莠不齐,所以决定自己写下亲测有效的安装经历,以备不时只需,也能帮助到他人。
总体来说只有三步:安装CUDA、安装cuDNN、安装tensorflow。
系统环境:原始的 Ubuntu14.04, GPU: Tesla P4
这样直接安装CUDA,而不是先独立安装GPU驱动,在安装CUDA的过程中,会安装好相应的GPU驱动,省时省力,比较方便。
CUDA 8.0 大约2G,下载网址 https://developer.nvidia.com/cuda-downloads,进去下载相应的版本即可,但是现在已经没有14.04对应的版本了,已经更新成了16和17的版本。
sudo dpkg -i cuda-repo-ubuntu1404-8-0-local-ga2_8.0.61-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda
安装后CUDA后,需要设置环境变量,
sudo gedit /etc/profile ,
在profile结尾加上:
export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}} (替换成自己系统cuda的bin位置,一般默认是这个)
保存后,在终端中 source /etc/profile
安装好CUDA之后,GPU的驱动也就自己安装好了,测试一下。
输入: nvidia-smi 查看GPU使用情况:
然后跳转至cuda的sample文件夹下:cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery
执行make,之后执行文件:./deviceQuery
最后是 Result = PASS 就OK了。
https://developer.nvidia.com/cudnn
注册后下载 cuDNN v5.1 Library for Linux
在下载包所在目录,打开终端:
tar xvzf cudnn-8.0-linux-x64-v5.1-ga.tgz
sudo cp -P cuda/include/cudnn.h /usr/local/cuda/include
sudo cp -P cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
安装完CUDA 8.0 和 cuDNN 5.1后,在终端输入
sudo apt-get install libcupti-dev
tensorflow可以在线安装:sudo pip install https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.0.1-cp27-none-linux_x86_64.whl
也可以下载下来本地安装,因为之前就有现在好的包,所以我选择的是第二种。
在包 tensorflow_gpu-1.0.1-cp27-none-linux_x86_64.whl 所在目录,直接:
sudo pip install tensorflow_gpu-1.0.1-cp27-none-linux_x86_64.whl
终端输入: python
>>> import tensorflow as tf
如下图就OK。
至此,大功告成。