如何在Ubuntu 17.04架設Deep Learning 環境

最近實驗室買了新電腦,跟同學幫忙設定一下系統,順便做個筆記。

一樣,先交代一些背景環境

Ubuntu 17.04 server 64bit
Intel Core i7-7700K
MSI GeForce GTX 1080 Ti GAMING X 11G

首先你要先安裝Ubuntu。然後你就會發現你的配備太新,ubuntu有點跟不上,於是你的螢幕就會完全沒有畫面。報告各位,完全沒有畫面。

怎麼辦?不怕不怕,在grub多重開機選單裡面把光棒移到ubuntu,按下 e,然後再出現Linux那一行的最後面加上

nomodeset

然後你就會發現開機會有畫面了

Driver

好,那我們來安裝NVIDIA顯示卡驅動,小弟有試過用runfile直接編譯,不過失敗,所以下面是我最後成功的方法

起手式先把下面必備的裝一裝

sudo apt install htop
sudo apt install gcc
sudo apt install make
sudo apt install git

然後開始裝驅動吧,先啟動PPA

sudo add-apt-repository ppa:graphics-drivers/ppa  
sudo apt-get update

然後安裝Titan Xp跟1080Ti尊爵不凡的381版驅動

sudo apt-get install nvidia-381

安裝完重開機應該就會出現正常畫面了,我們也可以用nvidia-smi來檢查ubuntu是否確實抓到顯示卡,同時這個指令也可以來察看顯示卡有什麼運算。

安裝CUDA & cuDNN

我們開始安裝CUDA跟cuDNN吧。

先下載 CUDA

首先先抓下deb檔(啥,你問我為什麼不用runfile。當然是因為驅動run不過,十年怕點run

sudo dpkg -i cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda

然後下載安裝cuDNN

目前TensorFlow最新1.2版只支援到 cuDNN 5.1,未來1.3版據稱會支援 cuDNN 6.0,Pascal核心的GPU運算應該會再有提升

tar xvzf cudnn-8.0-linux-x64-v5.1-ga.tgz
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

重開機應該就ok了

安裝Keras & TensorFlow

首先先裝anaconda

wget https://repo.continuum.io/archive/Anaconda3-4.4.0-Linux-x86_64.sh
bash Anaconda3-4.4.0-Linux-x86_64.sh

然後設成預設(我是習慣用conda來建環境跟套件管理

加入路徑資訊進 .bashrc 後記得source他

source .bashrc

如果TensorFlow要可以叫出CUDA必須安裝下列的套件

sudo apt-get install libcupti-dev

用pip安裝TensorFlow GPU版

pip install tensorflow-gpu

再來安裝Keras

pip install keras

這樣應該就搞定了,可以下載Keras的example跑跑看,以下分享我的懶人法XD

git clone https://github.com/fchollet/keras.git
cd keras/example/
python [隨便選一個 .py XD]

最後

願Tensor與你同在
May the Tensor be with you