安裝 nvidia 驅(qū)動,cuda, 以及 cudnn

安裝 nvidia 驅(qū)動是一個很坑的問題肛捍。至少對于我來說隐绵,按照 nvidia 官網(wǎng)的方式下載 .run 文件安裝從來沒成功過。最后我搜了內(nèi)外網(wǎng)拙毫,找到了本文即將介紹的安裝方式依许,很好用!

安裝 nvidia 驅(qū)動

  1. 添加 nvidia repository
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
  1. 選擇驅(qū)動版本并安裝
ubuntu-drivers devices

顯示可用的驅(qū)動版本恬偷,例如:

driver   : nvidia-410 - third-party free
driver   : nvidia-415 - third-party free
driver   : nvidia-418 - third-party free
driver   : nvidia-384 - distro non-free
driver   : nvidia-430 - third-party free recommended
driver   : xserver-xorg-video-nouveau - distro free builtin

如果要安裝 410 版本悍手,就用如下命令

sudo apt install nvidia-410

也可以選擇 415, 418 等其他驅(qū)動版本。
上邊顯示的驅(qū)動可能會有變化袍患,例如這樣(中間多了 "driver" 字樣)

driver   : nvidia-driver-410 - third-party free
driver   : nvidia-driver-415 - third-party free
driver   : nvidia-driver-440 - third-party free recommended
driver   : nvidia-driver-430 - third-party free
driver   : nvidia-driver-390 - third-party free
driver   : nvidia-driver-435 - third-party free
driver   : xserver-xorg-video-nouveau - distro free builtin

依然安裝對應(yīng)的驅(qū)動坦康,例如

sudo apt install nvidia-driver-410

注意:如果在 BIOS 中將 secure boot 設(shè)置為 on,在上述安裝過程中可能出現(xiàn)設(shè)置 secure boot 密碼的相關(guān)提示诡延。如果在安全性方面要求不是很苛刻滞欠,可以考慮將 secure boot 設(shè)置為 off.

  1. 重啟,然后通過用如下命令查看顯卡信息
nvidia-smi

其中 smi = System Management Interface肆良。

如果重啟之后運(yùn)行 nvidia-smi 時出現(xiàn)如下錯誤:

NVIDIA-SMI has failed because it couldn't communicate with the NVIDIA driver. Make sure that the latest NVIDIA driver is installed and running.

一種可能的解決方法是在 "Software & Updates" 界面中選擇其他驅(qū)動版本筛璧,尤其是較新的版本,Apply changes 之后重啟惹恃,可能解決問題夭谤。

如果上述方式安裝失敗,可以參考這篇文章巫糙,嘗試其他的安裝方法朗儒。也可以參考這篇文章 中的安裝方式。

安裝 cuda

安裝 cuda 是為了加速訓(xùn)練神經(jīng)網(wǎng)絡(luò)参淹。首先去下邊的網(wǎng)站確定一下本機(jī) NVIDIA 顯卡類型是否支持 cuda
https://developer.nvidia.com/cuda-gpus
只要不是太古老的 NVIDIA 顯卡一般都支持 cuda醉锄。

如果訓(xùn)練中用到了 tensorflow,應(yīng)該確認(rèn)一下 cuda 版本與 tensorflow 版本的兼容性問題浙值。有些程序指定要用某個版本的 tensorflow恳不,那么就應(yīng)該安裝與之兼容的 cuda 版本。


versions.png

如果裝了 cuda 10 开呐,但是訓(xùn)練程序使用 tensorflow 1.11烟勋,版本不匹配规求,運(yùn)行程序時會提示類似如下的錯誤:

 ImportError: libcublas.so.9.0: cannot open shared object file

版本對應(yīng)關(guān)系可以在這里查詢。

PyTorch 的版本與 cuda 版本也有對應(yīng)關(guān)系神妹,在 PyTorch 主頁 可以下載與 cuda 對應(yīng)的版本颓哮,如果要下載更舊的版本,可以在這里這里查找鸵荠。

說到版本對應(yīng)關(guān)系冕茅,cuda 對 nvidia GPU 驅(qū)動也是有最低版本要求的,可以查看這里蛹找。

確定要安裝的 cuda 版本之后姨伤,按照 官網(wǎng)步驟安裝即可。

例如庸疾,我選擇的是 cuda 10.0


Screenshot from 2019-01-21 20-35-41.png

安裝完了還需要檢查一下是否成功:

cd /usr/local/cuda/bin

./nvcc -V

若顯示 cuda compiler 版本乍楚,這樣就說明 cuda 安裝成功了。

安裝 cudnn

這一部分也是按照官網(wǎng)的指導(dǎo)安裝即可 https://docs.nvidia.com/deeplearning/sdk/cudnn-install/index.html届慈。
比較麻煩的一點是徒溪,需要先注冊才能下載 cudnn 安裝文件。

選擇安裝文件版本的時候金顿,要與 cuda 版本匹配臊泌,就是上邊 nvcc -V 顯示的版本。注意揍拆,不是nvidia-smi 中顯示的 cuda 版本渠概。這兩個版本可能是不一致的,以 nvcc 為準(zhǔn)嫂拴。

如果 nvcc -Vnvidia-smi 顯示的版本不一致播揪,可能的原因可以參考這里: https://www.nuomiphp.com/eplan/en/163997.html
簡單來說, cuda 有兩類 API:cuda driver API 和 cuda runtime API筒狠。在安裝 nvidia 驅(qū)動時猪狈,附帶安裝了 driver API,nvidia-smi 顯示的是 driver API 版本辩恼;在安裝 cuda 時安裝了 runtime API雇庙,nvcc -V 顯示的時 runtime API 版本。一般基于 cuda 開發(fā)的程序都是考慮 runtime API 版本运挫,也就是nvcc -V 顯示的版本。

然后就是安裝套耕,我的系統(tǒng)是 ubuntu 16.04谁帕,對應(yīng)下載如下三個文件


Screenshot from 2019-01-21 20-53-21.png

下載之后安裝:

sudo dpkg -i libcudnn*.deb

驗證是否安裝成功

cp -r /usr/src/cudnn_samples_*/ $HOME
cd  $HOME/cudnn_samples_*/mnistCUDNN
make clean && make
./mnistCUDNN

如果一切順利,尤其是版本匹配沒有問題冯袍,應(yīng)該會提示 "......Test passed!”
如果編譯過程中提示沒有頭文件 FreeImage匈挖,通過如下方式安裝:

sudo apt-get install libfreeimage3 libfreeimage-dev

對于有些 test 不通過的情況碾牌,重啟一下機(jī)子可能就解決問題了。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末儡循,一起剝皮案震驚了整個濱河市舶吗,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌择膝,老刑警劉巖誓琼,帶你破解...
    沈念sama閱讀 216,470評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異肴捉,居然都是意外死亡腹侣,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評論 3 392
  • 文/潘曉璐 我一進(jìn)店門齿穗,熙熙樓的掌柜王于貴愁眉苦臉地迎上來傲隶,“玉大人,你說我怎么就攤上這事窃页《逯辏” “怎么了?”我有些...
    開封第一講書人閱讀 162,577評論 0 353
  • 文/不壞的土叔 我叫張陵脖卖,是天一觀的道長乒省。 經(jīng)常有香客問我,道長胚嘲,這世上最難降的妖魔是什么作儿? 我笑而不...
    開封第一講書人閱讀 58,176評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮馋劈,結(jié)果婚禮上攻锰,老公的妹妹穿的比我還像新娘。我一直安慰自己妓雾,他們只是感情好娶吞,可當(dāng)我...
    茶點故事閱讀 67,189評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著械姻,像睡著了一般妒蛇。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上楷拳,一...
    開封第一講書人閱讀 51,155評論 1 299
  • 那天绣夺,我揣著相機(jī)與錄音,去河邊找鬼欢揖。 笑死陶耍,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的她混。 我是一名探鬼主播烈钞,決...
    沈念sama閱讀 40,041評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼泊碑,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了毯欣?” 一聲冷哼從身側(cè)響起馒过,我...
    開封第一講書人閱讀 38,903評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎酗钞,沒想到半個月后腹忽,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,319評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡算吩,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,539評論 2 332
  • 正文 我和宋清朗相戀三年留凭,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片偎巢。...
    茶點故事閱讀 39,703評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡蔼夜,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出压昼,到底是詐尸還是另有隱情求冷,我是刑警寧澤,帶...
    沈念sama閱讀 35,417評論 5 343
  • 正文 年R本政府宣布窍霞,位于F島的核電站匠题,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏但金。R本人自食惡果不足惜韭山,卻給世界環(huán)境...
    茶點故事閱讀 41,013評論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望冷溃。 院中可真熱鬧钱磅,春花似錦、人聲如沸似枕。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,664評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽凿歼。三九已至褪迟,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間答憔,已是汗流浹背味赃。 一陣腳步聲響...
    開封第一講書人閱讀 32,818評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留虐拓,地道東北人心俗。 一個月前我還...
    沈念sama閱讀 47,711評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像侯嘀,于是被迫代替她去往敵國和親另凌。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,601評論 2 353

推薦閱讀更多精彩內(nèi)容