安裝 Installation of Torch7, Cuda, Cudnn, Nvidia Driver with GTX1070
GPU: Nvidia GTX1070 Platform: Ubuntu 14.04 LTS
經過了兩天的掙扎,終於把這一切都搞定了。 從頭開始條列問題
1. Nvidia GTX1070使用hdmi線的話,ubuntu14.04會有頻率out of range(超出工作範圍)的問題
在Grub模式(選擇要進入體驗ubuntu,安裝ubuntu,或windows的黑屏畫面),如果直接按enter選擇安裝ubuntu,你會連安裝都無法,因為直接黑畫面,頻率好像只有30幾螢幕不支援,這時候你想安裝什麼driver都無法,
(a)你同時有windows和ubuntu:解決方法是不要按enter,先上下選擇ubuntu(反白為選擇而不是按enter)並按下e,會進入編輯模式,
(b)你只有ubuntu:開機之後就按e按到進入編輯模式
然後找到"linux......quiet splash......"這行,並改寫為:
,然後按下F10啟動,這時候你就進的去了,
但是要注意這是暫時的,每次重開不可能都這樣作,所以我們要改寫grub
修改其中的一行就好,改成下面這樣
儲存後好像要讓他重新讀取
如此一來每次就不用再按一次e編輯了,第一個問題解決
2. 解析度低,並且無法從cuda找到對應的GPU裝置:安裝對應的Driver驅動程式
儘管已經可以用ubuntu了,你會發現無法調整解析度,是因為ubuntu並沒有GTX1070的Driver,上網查的很多方法都無法,特別注意,不要想直接用apt-get來安裝,因為最新的驅動程式似乎無法搜尋到,你可能還會裝到比較舊的版本,造成許多問題,
是故我們到官網去下載run檔 http://www.nvidia.com.tw/Download/index.aspx?lang=tw 下載對應你GPU的版本,不要妄想用別的,最後會壞掉,網路上會推薦你用什麼bumblebee殺小的,至少我用1070他無法作用就是,乖乖下載
舉例來說GTX1070最後會下載到的檔案為:NVIDIA-Linux-x86_64-367.27.run
我們來安裝驅動程式,這裡有個很重要的地方,就是你無法直接在一般界面上安裝,按下ctrl+alt+F1可以切換到純命令界面,接著我們必須把GUI關掉
接著cd到你放run file的地方
然後一直選yes,『但是!!!注意在最後有個X configuration的東西要選no!!!!』continue直到安裝結束就好 接著你可以用sudo reboot重新開機,或是可以alt+右鍵一直按直到回到圖形界面,或是 sudo service lightdm restart也可以回到圖形界面,你就會發現解析度變好了,不然解析度差真的很痛苦。
2016/9/5更新
如何確定有安裝好?(一定要確認這點!!!)
2017/1/3更新
想要監控每個時間點的GPU的memory使用量可以用以下方法持續刷新
由於之後有新的驅動程式367.44,但是他本身好像是有問題的,所以我之後重裝還是用367.27,版本也是很重要的,
如果你不小心裝了367.44,想要移除他,請使用以下指令
安裝cuda時,記得不要一起安裝opengl(不過我後來只要安裝好nvidia driver沒有特別指定這個好像也沒什麼問題),不然可能會導致login loop,我最近一次成功的順序是先安裝cuda再安裝nvidia drivier(在另外一台電腦上直接安裝nvidia driver也是完全沒問題,不過記得X configuration那項一定要選no),安裝cuda要參考下面的連結
重要參考:
https://devtalk.nvidia.com/default/topic/878117/-solved-titan-x-for-cuda-7-5-login-loop-error-ubuntu-14-04-/
http://askubuntu.com/questions/762254/why-do-i-get-required-key-not-available-when-install-3rd-party-kernel-modules
如果你不小心裝了連自己都不知道是啥的版本,可以用下面方式刪除(通常網路上會建議你用ppa安裝,但是像367.44被安裝後是不能用的,這時候就需要下面這行)
3. Cuda 7.5 or Cuda 8.0 ?
對GTX1070來說,千萬不要用7.5,直接用8.0,雖然網路很多人都說他們可以用,但是7.5我用了兩天都用不好,灰心下8.0用了兩三個小時就一切搞定了
(如果你用了7.5的話,你會發現跟driver超級不合,然後luarocks install cutorch的東西也會報錯)
2016/9/6更新 GTX780我用cuda 7.5是沒什麼問題的
https://developer.nvidia.com/cuda-toolkit 下載8.0並對應你所用的系統,記得下載run file好像才能選擇要否裝驅動,我們這裡是ubuntu14.04
我最後下載到的檔案名為:cuda_8.0.27_linux.run 可以使用以下命令安裝
他會出現一堆字,就是合約要你看的,我們直接ctrl+C他會問你是否同意,就按照同意的概念去選之後的選項,
特別注意!!!!!!! 不要安裝他的driver因為我們前一步已經安裝過了,記得那項千萬要選NO
安裝好了後編輯一下來源
在最後加上後面這幾行就行了
可能再用一下source ~/.bashrc讓他讀一下什麼之類的
4. 安裝Cudnn
其實最重要的就是Cuda要選對,在GTX1070這個情況就是Cuda 8.0,Cudnn也是選對應8.0的即可
https://developer.nvidia.com/cudnn
去註冊並登入並下載對應你cuda的版本
(2017/07/24更新) 因為版本越來越新,很有可能會不小心下載到cudnn6,但是記得不要,用cudnn5就好,然後步驟要記得全部跑一遍。
我下載的是
cudnn-8.0-linux-x64-v5.0-ga.tgz
解壓縮後是一個名為cuda的資料夾,裡面有include和lib64兩個folder,我們需要把他們放到該放的地方去
假設我們把cuda資料夾放在Desktop上
更新他們的軟連結(注意其中的編號要依照你下載的版本而定)
2016/9/9更新
有時候你安裝其他東西的時候會遇到說找不到lcufft這種感覺的東西,這時候也是軟連結的問題
像是在安裝spectral-lib的時候就會遇到這個問題
https://github.com/mbhenaff/spectral-lib
打入下面東西就沒事囉
5. 安裝Torch7
如果前面都完成了,你就可以放心安裝torch7了
6. 其他問題
2017/02/23更新(許洸睿提供)
(1) Asus Prime Z270 主機板安裝在ubuntu 14.04 & 16.04 沒有網路:
https://ubuntuforums.org/showthread.php?t=2351572
下載 e1000e-3.3.5.3-patched.tar.gz 安裝
(2)替Linux 新增硬碟(磁碟分割、格式化與掛載)
https://blog.gtwang.org/linux/linux-add-format-mount-harddisk/
2017/07/04更新
(3)安裝後忘了使用source ~/.profile導致無法登入ubuntu
這個時候連GUI介面的terminal都無法進入,我此時是用teamviewer遠端,也無法進入非GUI介面,是故亂點teamviewer跳出來的連結進入chrome,再點chrome的下載紀錄,打開資料夾,隨便找個文件檔打開sublime,用open file的方式直接進入~/.profile進去編輯,把跟torch-activate的行拿掉,就可以開了。(汗
(4)安裝cutorch等失敗
由於torch是一直在更新的,如果你之後想要重新安裝全部的torch卻失敗,很可能是因為他們用了更新的cuda之類的,這時候就重新去官網下載新的cuda重新安裝就是了,舉例來說cuda_8.0.27和cuda_8.0.61是不一樣的,你很可能需要重新安裝。
(5)無論如何就是找不到libcudnn.so.5但是我明明就放進去了
http://blog.csdn.net/u014696921/article/details/60140264
必須感謝這個人,不然我可能也要一個星期......
似乎是cuda路徑設錯?不管如何這樣就可以了。