Ubuntu 16.04 + GTX 1080 Ti + CUDA 9.0 + Cudnn 7.1 安裝配置
CUDA與CUDNN版本對應關系,可參考該鏈接:
https://blog.csdn.net/qq_27825451/article/details/89082978
1. 安裝顯卡驅動
首先查看一下自己的電腦需要怎樣的驅動,我們可以先到 http://www.nvidia.com/Download/index.aspx 查詢下我們需要的是怎樣的驅動,這里我的顯卡是 GTX 1080 Ti,所以以此為例說明,勾選好對應的配置:
點擊search並下載驅動
打開terminal,卸掉系統原有驅動:
sudo apt-get remove --purge nvidia*
在安裝新驅動前,禁用nouveau:
在終端中運行 lsmod | grep nouveau
若沒有輸出則nouveau已禁用;若有輸出則說明nouveau正在運行,需要手動禁用:
sudo vim /etc/modprobe.d/blacklist-nouveau.conf
在該文件尾部輸入以下內容:
blacklist nouveau
options nouveau modeset=0
保存並關閉文件。
在終端中執行:sudo update-initramfs -u
再次運行 lsmod | grep nouveau 檢查nouveau是否禁用,若未禁用則重復上述操作。
關閉圖形化界面:sudo service lightdm stop
按Ctrl + Alt + F1 進入字符終端頁面,
進入驅動所在的目錄,運行:
sudo sh 驅動名
安裝完之后重啟: sudo reboot
打開終端輸入命令: nvidia-smi, nvidia-settings查看驅動安裝狀態:
2. 安裝CUDA 9.0
sudo sh cuda_9.0.176_384.81_linux.run
是否Accept EULA:Accpet
Install driver:Yes/No
Install OpenGL:No
Run nvidia_xconfig: No
Install Cuda Toolkit: Yes
Yes
Yes
配置CUDA的環境變量:
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 使其生效
3. 配置 Cudnn
下載Cudnn並解壓:
tar -zxvf cudnn-7.0-linux-x64-v3.0-prod.tgz
解壓后會看到一個cuda文件夾,里面包含了include以及lib64兩個子目錄。我們需要做的就是將這兩個字母里面的文件復制到cuda對應的安裝目錄。這里以cuda的安裝目錄為/usr/local/cuda/,這個目錄下也會包含include/以及lib64/這兩個文件夾,將之前目錄的文件復制過來即可。
sudo cp cuDNN/cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuDNN/cuda/lib64/* /usr/local/cuda/lib64/
這時候本來已經可以了,但是由於權限的原因原來的兩個符號鏈接文件(libcudnn.so,libcudnn.so.7.0)已經失效了,直接編譯便會報錯,所以這時手動生成符號鏈接。
#下面的操作在/usr/local/cuda/lib64/目錄下進行
sudo rm -rf libcudnn.so libcudnn.so.7.0#刪除兩個符號鏈接;
sudo ln -s libcudnn.so.7.0.64 libcudnn.so.7.0
sudo ln -s libcudnn.so.7.0 libcudnn.so
運行source ~/.bashrc 使其生效
如果出現下面問題:
/sbin/ldconfig.real: /usr/local/cuda/lib64/libcudnn.so.7 is not a symbolic link
則參考如下解決方法,版本需對應安裝的cudnn的相應版本(link:https://askubuntu.com/questions/1025928/why-do-i-get-sbin-ldconfig-real-usr-local-cuda-lib64-libcudnn-so-7-is-not-a):
sudo rm libcudnn.so
sudo ln libcudnn.so.7.0.5 libcudnn.so.7
sudo ln libcudnn.so.7 libcudnn.so
sudo ldconfig
Cudnn配置完畢
4. 安裝Anaconda
根據環境下載對應的anaconda 軟件,運行:
Sudo bash Anaconda3-5.1.0-Linux-x86_64.sh
安裝完之后創建python虛擬環境:
conda create -n tensorflow pip python=2.7 # or python=3.3, etc.
(根據需要選擇合適的python版本)
5. 安裝Tensorflow-gpu
輸入命令:source activate tensorflow-gpu
pip install --ignore-installed --upgrade tfBinaryURL
(我裝的是tensorflow-gpu 1.10版本,把tfBinaryURL 替換如下
https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow_gpu-1.10.0-cp36-cp36m-linux_x86_64.whl )
鏈接不好使~需要多試幾次,tensorflow會自動下載安裝
6. 缺少的一些包用pip安裝:
Pip install opencv-python
Pip install matplotlib, etc