双显卡 ubuntu16.04 安装 NVIDIA驱动 + CUDA + cuDNN + tensorflow-gpu + keras
可能还是因为对ubuntu了解太少,昨天晚上随便倒腾两下系统就开始循环登录、启动黑屏。。网上查了很多资料都没有解决问题,主要是自己也没有备份。于是只能重装了,虽然已经重装过很多次了,还是记录一下安装踩的坑。同时也提醒自己,以后记得备份系统,配置一次环境太费事儿了。。
环境:
ubuntu 16.04 64bit
双显卡:NVIDIA GEFORCE GTX 850M + 集成显卡
驱动:nvidia 375.66
软件:cuda8.0 + cuDNN5.1
1.准备工作:
1.1 配置安装环境
sudo apt-get update
sudo apt-get install python-dev python-pip python-nose gcc g++ git gfortran
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler
sudo apt-get install --no-install-recommends libboost-all-dev
sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
sudo apt-get install git cmake build-essential
1.2 禁用自带的显卡驱动nouveau
sudo gedit /etc/modprobe.d/blacklist-nouveau.conf
在其中加入:blacklist nouveau option nouveau modeset=0
sudo update-initramfs -u
1.3 加入环境变量
sudo gedit ~/.bashrc
在其中加入:
export LD_LIBRARY_PATH=/usr/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/lib/x86_64-linux-gnu:$LD_LIBRARY_PATH
执行 source ~/.bashrc
2. 安装NVIDIA显卡驱动 (网上也有先装cuda再装驱动的)
首先还是先去官网下载正确的显卡驱动,官网:http://www.geforce.cn/drivers
查看自己的显卡型号:
sudo lshw -numeric -C display
如果之前安装过nvidia驱动,先卸载:
sudo apt-get remove –purge nvidia*
Ctrl-Alt+F1进入命令行界面
cd Downloads
sudo chmod a+x NVIDIA-Linux-x86_64-375.66.run
sudo ./NVIDIA-Linux-x86_64-375.66.run –no-x-check –no-nouveau-check –no-opengl-files
# 这句一定要加参数,不然就会循环登录
reboot
3. 安装cuda
去官网下载:https://developer.nvidia.com/cuda-downloads
注意一定要下载runfile。
Ctrl-Alt+F1进入命令行界面
cd Downloads
sudo service lightdm stop
sudo sh cuda-8.0.44_linux.run --no-opengl-libs
一直输入yes就行
reboot
重启之后进入修改环境配置
sudo gedit ~/.bashrc
加入:
export PATH=/usr/local/cuda-8.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
执行: source ~/.bashrc
测试安装是否成功:
cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
显示gpu信息,说明安装成功。
查看显卡情况:nvidia-smi
4. 配置cuDNN
官网下载:https://developer.nvidia.com/rdp/cudnn-download
注册账号之后就可以下载啦。建议下载5.1,安装6.0之后会一直提示缺少文件,怕了怕了。下载之后解压
cd Downloads/cuda
sudo cp -a include/cudnn.h /usr/local/cuda/include/ # 复制头文件
cd ./lib64
sudo cp -a lib* /usr/local/cuda/lib64/ #复制动态链接库 cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.5 #删除原有动态文件
sudo ln -s libcudnn.so.5.1.5 libcudnn.so.5 #生成软衔接
sudo ln -s libcudnn.so.5 libcudnn.so #生成软链接
5. tensorflow-gpu+keras
sudo pip install -U --pre pip setuptools wheel
sudo pip install -U --pre numpy scipy matplotlib scikit-learn scikit-image
sudo pip install -U --pre tensorflow-gpu
sudo pip install -U --pre keras
打开python测试一下:
import tensorflow
import keras
没报错就安装好啦~
官网给出的测试:
git clone https://github.com/fchollet/keras.git
cd keras/examples/
python mnist_mlp.py