安裝驅動

最開始在英偉達官網下載了官方驅動,安裝之後無法登入系統,在登入介面反覆迴圈,用cuda裡的驅動也出現了同樣的問題。最後解決辦法是把驅動解除安裝之後,通過命令列線上安裝驅動。
解除安裝驅動:

sudo nvidia-uninstall

線上安裝:

sudo apt-add-repository  ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-384 #具體驅動版本號可以到官網查

安裝完之後,在終端輸入

nvidia-smi

出現下圖,說明顯示卡安裝成功:

安裝cuda

在英偉達官網下載cuda安裝包(.run檔案),在終端中切換到cuda安裝包目錄,直接sudo執行安裝包即可。注意在問你是否要安裝顯示卡驅動的時候,選擇no。
安裝之後,新增環境變數:

gedit ~/.bashrc

在檔案最後新增如下幾行:

export PATH="/usr/local/cuda/bin:$PATH"
export CUDA_HOME="/usr/local/cuda"
export LD_LIBRARY_PATH="/usr/local/cuda/lib64:/usr/local/cuda/extras/CUPTI/lib64:$LD_LIBRARY_PATH"

之後把cudnn檔案複製到cuda安裝目錄的lib和include資料夾下。

安裝tensorflow

安裝之前需要安裝libcupti-dev庫,

sudo apt-get install libcupti-dev

安裝tensorflow的方法很多,最簡單的方法是用pip(或者用conda命令,如果你安裝了anaconda的話)安裝:

pip install tensorflow-gpu
# conda install tensorflow-gpu

如果想制定安裝某個版本,可以在tuna上檢視具體版本的連結:

https://mirrors.tuna.tsinghua.edu.cn/help/tensorflow/

驗證安裝是否成功,在python命令列中輸入如下程式碼:

import tensorflow as tf
hello = tf.constant('Hello, TensorFlow!')
sess = tf.Session()
print(sess.run(hello))

如果輸出Hello, TensorFlow!,說明安裝成功。如果報錯說沒有找到libcuda.so:

ImportError: libcuda.so.1: cannot open shared object file: No such file or directory

那麼到系統的庫檔案目錄下新建一個連結,連結到cuda安裝目錄下的libcuda.so檔案。首先通過下面的命令查詢libcuda.so在哪個目錄下:

sudo find / -name 'libcuda.so*' -maxdepth 10

假設找到是在目錄LIB_DIR下,那麼通過下面的命令新建連結:

cd /usr/lib/x86_64-linux-gnu  # 系統庫檔案目錄
sudo ln -s LIB_DIR libcuda.so.1

其他錯誤,請參考如下連結:
https://www.tensorflow.org/install/install_linux#common_installation_problems

參考資料:

[1] https://www.tensorflow.org/install/install_linux