Ubuntu系統下GPU版Tensorflow安裝總結

安裝環境:

Ubuntu 18.04.1 LTS + miniconda 3.0

準備安裝:

Tensorflow-GPU 1.3

預想的操作步驟:

conda create -n tensorflow_gpu pip python=3.5   
source activate tensorflow_gpu    
pip install --upgrade tensorflow-gpu==1.3.0

碰到的問題:

ImportError: libcublas.so.8.0: cannot open shared object file: No such file or directory

解決辦法:

這個是cuda和cuDNN沒裝的原因(網上教程說用conda裝1.3版的Tensorflow-GPU會自動安裝cuda和cuDNN,這裏我也不知道爲什麼我的沒有自動安裝,猜測可能的原因有兩個:需要指定conda的下載源,或者是因爲用的是開源的顯卡驅動而非Navida的專用顯卡驅動)

總之,百度cuda和cuDNN的安裝方法,一堆教程,一般分爲三步:先裝顯卡驅動,再裝cuda,最後裝cuDNN

 

於是開始裝顯卡驅動,有通過各種命令裝的,要禁用nouveau什麼的,有圖形界面安裝的,當然是選擇怎麼方便怎麼來啦。

預想的裝顯卡驅動過程:

1、“應用程序”->“軟件和更新”->"附加驅動"

2、選擇一個專有驅動,然後重啓電腦

碰到的問題:

重啓電腦後一直閃屏進不去系統

解決辦法:

這個問題剛碰到的時候急得要死,進不去系統可是最麻煩的事,僅次於沒有聯網(只有先上網才能百度、谷歌解決辦法呀),不過辦法總是有的,用手機百度,發現碰到跟我一樣問題的人還真不少,有按教程做了碰到這個問題的,有換顯卡驅動碰到這個問題的,有好奇寶寶想改驅動設置的。解決方法也搜了一堆,感覺好像都跟我的情況不太相同,試了一兩個沒效果。突然想到在驅動安裝完成的時候提示我有secure boot,讓我設置密碼,想想有可能跟這個有關,於是進入BIOS,關掉secure boot,重啓電腦後順利進入系統。這裏沒完全想明白爲什麼會這樣,有可能是因爲專有驅動的代碼沒開源,系統認爲不安全?

 

進入系統後測試驅動安裝結果,顯示安裝成功。接着需要裝cuda和cuDNN,這兩個之間有版本的要求,根據我的tensorflow版本,選擇安裝cuda 8.0 和cuDNN 6.0。同樣,網上一堆教程教你怎麼從官網下載,怎麼安裝。於是開始下cuda 安裝包,太大了1個多G,下的時候想到conda不是有自動安裝的嘛,說明應該不用那麼麻煩,再百度搜conda安裝cuda,果然有:

conda install cudatoolkit=8.0 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64/
conda install cudnn=6.0 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/linux-64/

這裏需要先設置清華的下載源,由此想到最開始我可能沒有指定下載源,所以沒自動安裝。於是輸入幾個命令,順利安裝成功。接下來是測試Tensorflow,果斷的又報錯了

undefined symbol: cuDevicePrimaryCtxRetain

接着百度、谷歌一頓搜,發現可能原因是cuda和cuDNN不兼容,經過嘗試發現我選擇的版本是兼容的,那麼會不會是顯卡驅動不兼容?於是回到“附加驅動”,選了tested版本的navida-driver-390選項,不放心驅動是否更改成功,重啓了一次電腦,再測試Tensorflow,終於沒有報錯了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章