《Ubuntu16.04下配置GPU環(huán)境》

為了讓后來(lái)的漢子不踩坑躏仇,本人此處打的是情懷牌泞遗,盡量會(huì)寫詳細(xì)點(diǎn)~

有借鑒文章Ubuntu下安裝TensorFlow的最簡(jiǎn)單方法(無(wú)需手動(dòng)安裝CUDA和cuDNN)袱箱,但還是有幾處需要注意的地方熬的,以下奉上我的一波操作~

本文適用于 Ubuntu 16.04 点寥;至于18.04版本咕村,我還沒(méi)有嘗試過(guò)场钉,嘗試過(guò)會(huì)寫在這里~

本文包含內(nèi)容:

如何安裝顯卡驅(qū)動(dòng)

如何安裝 Anaconda

如何安裝TensorFlow(無(wú)需手動(dòng)安裝 CUDA 和 cuDNN )

如何遠(yuǎn)程運(yùn)行Jupyter Notebook(可選,但超有用)

本文不適用范圍

如果你租用云服務(wù)器懈涛,直接使用服務(wù)商提供的深度學(xué)習(xí)專用鏡像即可逛万。

如果你使用的是 RTX 系列顯卡,你得基于CUDA 10.0自行編譯TensorFlow批钠。因?yàn)榻刂帘疚陌l(fā)布時(shí)(18年11月)宇植,TensorFlow都沒(méi)有官方支持 CUDA 10.0得封,而 RTX 顯卡使用 CUDA 9.x 會(huì)偶現(xiàn)迷之報(bào)錯(cuò)。(我踩了很多坑才編譯成功指郁,會(huì)在近期寫篇文章忙上。)

0、先更新一下系統(tǒng):

sudo apt-get update

sudo apt-get upgrade

(備注:第二個(gè)命令運(yùn)行時(shí)間可能會(huì)有點(diǎn)久闲坎,請(qǐng)平躺做好心理準(zhǔn)備~)

1疫粥、打開終端,添加開源顯驅(qū)倉(cāng)庫(kù):

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

sudo apt-get update

2箫柳、安裝一些依賴

sudo apt-get install dkms synaptic build-essential

打開系統(tǒng)的 Software&Update工具手形,選擇?Additional Drivers,此時(shí)你會(huì)看到可以下載的顯卡驅(qū)動(dòng)悯恍。然后根據(jù)自己的顯卡库糠,在官網(wǎng)找到對(duì)應(yīng)的驅(qū)動(dòng)程序版本,看下?Additional Drivers里有沒(méi)有對(duì)應(yīng)的版本涮毫,如果有瞬欧,安裝之~,如果沒(méi)有罢防,請(qǐng)自行探索艘虎,哈哈~

驅(qū)動(dòng)安裝完成后,重啟計(jì)算機(jī)咒吐。

3野建、檢查驅(qū)動(dòng)是否安裝成功,在命令行輸入:?

nvidia-smi

看到顯卡當(dāng)前的狀態(tài)恬叹,例如溫度候生、顯存占用情況等,說(shuō)明驅(qū)動(dòng)安裝成功了绽昼。順便說(shuō)個(gè)小技巧唯鸭,如果你在跑模型時(shí)想監(jiān)控顯卡的溫度,也可以用這個(gè)命令:

watch -n 1 nvidia-smi? ? ? ? ? # 1表示每1秒刷新一次

4硅确、不要自行安裝CUDA和cuDNN

除非你打算安裝CUDA 10.0并自行編譯 TensorFlow 或 PyTorch 目溉,否則不要自行安裝 CUDA 和 cuDNN!因?yàn)榘姹炯嫒輪?wèn)題是個(gè)大坑菱农,而網(wǎng)上很多教程卻避而不談缭付。其實(shí)最簡(jiǎn)單穩(wěn)妥的辦法就是通過(guò) Anaconda 安裝 TensorFlow ,讓它來(lái)安裝正確的依賴 —— 例如 CUDA 和 cuDNN大莫。

5蛉腌、安裝 Anaconda

Anaconda 是數(shù)據(jù)科學(xué)家的必備神器,而我們使用它安裝 TensorFlow?的原因是:

一、自動(dòng)安裝正確版本的依賴烙丛;

二舅巷、環(huán)境管理 —— PyTorch 和 TensorFlow 依賴的CUDA版本不一致也沒(méi)關(guān)系;

三河咽、首先下載Anaconda钠右,這里我附上我網(wǎng)盤里的資源(鏈接: https://pan.baidu.com/s/1JUV6Wpx1Zzga4Iyi0RBp9g 提取碼: ah9m ),沒(méi)錯(cuò)忘蟹,我把這個(gè)安裝包轉(zhuǎn)到了云端飒房,用這個(gè)軟件(http://pandownload.com/)下載會(huì)比較快哈~

(備注:我是在windows上下載的,然后用U盤放在了Ubuntu的download文件夾下)

四媚值、安裝Anaconda

bash ~/Downloads/Anaconda3-5.3.0-Linux-x86_64.sh? ?#如果你下載的是3.7版

6狠毯、安裝好Anaconda之后,我們先為TensorFlow創(chuàng)建一個(gè)新的環(huán)境:

# 如果你安裝的是 Python 3.7 版的Anaconda褥芒,則需要聲明新創(chuàng)建的環(huán)境使用 Python 3.6:

conda create --name tf_gpu_env python=3.6 anaconda tensorflow-gpu

(備注1:此處小女子我碰到了一個(gè)錯(cuò)誤:conda:未找到命令嚼松;此處的解決方法為: export PATH=~/anaconda3/bin:$PATH)

(備注2:由于執(zhí)行了上面這個(gè)命令之后,附加包下載讓我等了足足6個(gè)小時(shí)锰扶,現(xiàn)已解決這個(gè)問(wèn)題献酗,各位漢子看好,在命令行運(yùn)行:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

conda config --set show_channel_urls yes

conda create --name tf_gpu_env python=3.6 anaconda tensorflow-gpu

這樣用不了多久坷牛,就可以快樂(lè)的進(jìn)行下一步啦~)

Anaconda會(huì)自動(dòng)安裝TensorFlow所需依賴罕偎,包含正確版本的CUDA和cuDNN。安裝完成后京闰,我們啟動(dòng)這個(gè)環(huán)境:

source activate tf_gpu_env

現(xiàn)在可以愉快的跑模型啦~

別忘了每次開機(jī)后都要手動(dòng)啟動(dòng)這個(gè)環(huán)境啊颜及,如果你想退出當(dāng)前環(huán)境,只需:

source deactivate

7蹂楣、如果你在 Jupyter Notebook 引入TensorFlow 時(shí)引起報(bào)錯(cuò) `No module named 'tensorflow' ` :

我們來(lái)逐步排查原因器予,首先關(guān)閉 Jupyter Notebook,直接在?tf_gpu_env?的環(huán)境中進(jìn)行以下操作捐迫。

7.1. 排除 Jupyter Notebook 的嫌疑

啟動(dòng) python

python

然后

import tensorflow

如果沒(méi)有問(wèn)題,那么說(shuō)明是 Jupyter Notebook 的問(wèn)題爱葵。這通常是因?yàn)?Jupyter Notebook 沒(méi)有讀取到正確的環(huán)境路徑施戴。退出 python 后,在當(dāng)前環(huán)境下重裝 Jupyter Notebook 就好了萌丈。

conda install jupyter notebook

7.2. 如果在 python 命令行中就無(wú)法引入 TensorFlow

這可能是因?yàn)槟阍?jīng)用?pip?安裝過(guò) TensorFlow 導(dǎo)致的赞哗,解決方法是在當(dāng)前環(huán)境中強(qiáng)行重裝 TensorFlow:

pip install --ignore-installed tensorflow-gpu

8. 遠(yuǎn)程運(yùn)行 Jupyter Notebook(可選,但超有用)

最后辆雾,分享一個(gè)很酷的小技巧肪笋。你已經(jīng)搭建好一臺(tái)高性能的深度學(xué)習(xí)PC了,但如果你已經(jīng)習(xí)慣了自己的筆記本電腦,希望繼續(xù)在上面做開發(fā)怎么辦藤乙?

你可以將這臺(tái)PC看作遠(yuǎn)端服務(wù)器猜揪,然后把筆記本的8888端口(Jupyter Notebook默認(rèn)端口)轉(zhuǎn)發(fā)到服務(wù)器的8888端口。這樣一來(lái)坛梁,你就能直接在筆記本上訪問(wèn) http://localhost:8888 使用運(yùn)行在服務(wù)器上的 Jupyter Notebook而姐。具體方法是:

先用筆記本SSH上服務(wù)器:

$筆記本: ssh @ # 這里填上服務(wù)器的內(nèi)網(wǎng)IP

接著在服務(wù)器啟動(dòng) Jupyter Notebook:

$服務(wù)器: source activate tf_gpu_env # 別忘了啟動(dòng)Anaconda的環(huán)境$服務(wù)器: jupyter notebook

然后在筆記本的終端上新開一個(gè)tab,設(shè)置端口轉(zhuǎn)發(fā):

$筆記本: ssh -NL 8888:localhost:8888 @

現(xiàn)在打開筆記本的瀏覽器划咐,訪問(wèn) http://localhost:8888 即可訪問(wèn)運(yùn)行在服務(wù)器上的 Jupyter Notebook 了拴念!

你還可以拔掉PC上的視頻線,Ubuntu 將不會(huì)啟動(dòng)圖形化界面褐缠,這能節(jié)省下大約8%~10%的顯存政鼠,從而把顯存全用在跑模型上。

以上方法要求筆記本和服務(wù)器在同一個(gè)局域網(wǎng)內(nèi)队魏,如果你想真·遠(yuǎn)程運(yùn)行 Jupyter Notebook公般,還需要不少工作,針對(duì)這個(gè)我暫時(shí)還沒(méi)去作死嘗試器躏,等我走一遍之后再分享給大家俐载。

備注:第二天我又碰到了上面的一個(gè)問(wèn)題:找不到conda命令!

解決辦法:

打開bashrc文件(該文件為隱藏文件)

輸入如下命令

$ vim ~/.bashrc

3.在該文件最后添加

export PATH=~/anaconda3/bin:$PATH

4.保存bashrc文件

5.運(yùn)行如下命令登失,更新該文件

輸入如下命令

$ source ~/.bashrc

6.測(cè)試是否安裝成功

輸入如下命令

$ conda --v

如果出現(xiàn)conda版本則成功遏佣。

Happy Hacking!

到此,我的操作完畢揽浙,總的說(shuō)來(lái)還算比較開心状婶,如果各位還出現(xiàn)其他問(wèn)題,不妨到本文開頭看看我借鑒的文章有沒(méi)有寫哈~馅巷,如果沒(méi)有寫膛虫,歡迎來(lái)留言~

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市钓猬,隨后出現(xiàn)的幾起案子稍刀,更是在濱河造成了極大的恐慌,老刑警劉巖敞曹,帶你破解...
    沈念sama閱讀 221,888評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件账月,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡澳迫,警方通過(guò)查閱死者的電腦和手機(jī)局齿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,677評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)橄登,“玉大人抓歼,你說(shuō)我怎么就攤上這事讥此。” “怎么了谣妻?”我有些...
    開封第一講書人閱讀 168,386評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵萄喳,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我拌禾,道長(zhǎng)取胎,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,726評(píng)論 1 297
  • 正文 為了忘掉前任湃窍,我火速辦了婚禮闻蛀,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘您市。我一直安慰自己觉痛,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,729評(píng)論 6 397
  • 文/花漫 我一把揭開白布茵休。 她就那樣靜靜地躺著薪棒,像睡著了一般。 火紅的嫁衣襯著肌膚如雪榕莺。 梳的紋絲不亂的頭發(fā)上俐芯,一...
    開封第一講書人閱讀 52,337評(píng)論 1 310
  • 那天,我揣著相機(jī)與錄音钉鸯,去河邊找鬼吧史。 笑死,一個(gè)胖子當(dāng)著我的面吹牛唠雕,可吹牛的內(nèi)容都是我干的贸营。 我是一名探鬼主播,決...
    沈念sama閱讀 40,902評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼岩睁,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼钞脂!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起捕儒,我...
    開封第一講書人閱讀 39,807評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤冰啃,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后刘莹,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體亿笤,經(jīng)...
    沈念sama閱讀 46,349評(píng)論 1 318
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,439評(píng)論 3 340
  • 正文 我和宋清朗相戀三年栋猖,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片汪榔。...
    茶點(diǎn)故事閱讀 40,567評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡蒲拉,死狀恐怖肃拜,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情雌团,我是刑警寧澤燃领,帶...
    沈念sama閱讀 36,242評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站锦援,受9級(jí)特大地震影響猛蔽,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜灵寺,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,933評(píng)論 3 334
  • 文/蒙蒙 一曼库、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧略板,春花似錦毁枯、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,420評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至瓤檐,卻和暖如春赂韵,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背挠蛉。 一陣腳步聲響...
    開封第一講書人閱讀 33,531評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工祭示, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人碌秸。 一個(gè)月前我還...
    沈念sama閱讀 48,995評(píng)論 3 377
  • 正文 我出身青樓绍移,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親讥电。 傳聞我的和親對(duì)象是個(gè)殘疾皇子蹂窖,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,585評(píng)論 2 359

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