大型總結:ubuntu18.04下tensorflow1.10-gpu安裝過程的無數坑
神舟Z7-KP7GT下windows10+ubuntu18.04的系統安裝與完善
ubuntu18.04系統安裝
我採用U盤燒錄安裝,先從官網下載ubuntu18.04: http://releases.ubuntu.com/18.04/?_ga=2.99976730.526829365.1537876915-1081461388.1537454172 最新版本的LTS有多少好處我就不說了,大家都懂。 以下操作基於windows10: 1.先下個UltraISO用於燒錄:https://www.ultraiso.com/ 2.把下好的ubuntu18.04的iso檔案刻錄到U盤裡; 3.右鍵“我的電腦”開啟磁碟管理器,壓縮卷,空間自行分配。我是分了110GB左右。 4.關機,狂按F2進入BIOS介面,把SECURE MODE給DISABLED掉,再把BOOT OPTION PRIORITY調成USB KEY第一,SAVE AND REBOOT; 5.這時開機後,就會進入全紫色的grub2.x的介面,能看到Try Ubuntu 和Ubuntu install。小技巧是先進入Try選項,然後在圖形介面下完成install,這樣可以聯網。注意:我的本本帶GTX1060,ubuntu對N卡的驅動支援是不太好的,直接enter選項1或2後會分分鐘卡機,只好強制關機。所以你需要把游標移到1或2後,按E進入編輯項,在quiet splash後輸入acpi=off(“- - -”可以刪掉,不影響)
系統功能完善
1.ppa源更新 換成阿里雲源 deb http://mirrors.aliyun.com/ubuntu/
sudo apt install gnome-tweak-tool sudo apt install gnome-shell-extensions sudo apt install chrome-gnome-shell
anaconda+tensorflow-gpu安裝
anaconda3
tensorflow-gpu
cuda9.2
說實話,這麼多教程看過來,只有官方文件是最靠譜的。我就是照著官方文件一步步做下去的,一次pass,順便安好了GTX1060的驅動(版本為396) https://docs.nvidia.com/cuda/
cudnn7.2
tensorflow-1.10-gpu
在這裡非常感謝這位大神,這個教程非常詳細 https://www.solarck.com/compile-tensorflow-gpu.html 原始碼雖然編譯過程比較痛苦,但出了錯容易發現,能比較好地檢驗自己檔案的依賴關係有沒有錯誤。 我遇到的問題有: 1.報錯,找不到 libcubla9.2.so : 如果版本對應好了,就是因為PATH和LD_LIBRARY_PATH沒設定好。
sudo gedit ./bashrc #編輯 ~/.bashrc檔案,在文末追加 export PATH=/usr/local/cuda/bin:LD_LIBRARY_PATH
2.配置更新,終端輸入ldconfig後說.so檔案不是符號連結: 刪除並重新建立連結就好 輸入“ln -sf 待連結檔案路徑 原連結檔案路徑“
題外話:pycharm下的tensorflow
如果你和我一樣,在終端輸入python,之後打入import tensorflow正常執行,但是開啟pycharm,在相同的python環境下卻找不到此module(tensorflow),那麼恭喜pycharm阿呸,都是pycharm搞的鬼。 終端使用bash的環境變數,而pycharm不使用。 終端使用bash的環境變數,而pycharm不使用。 終端使用bash的環境變數,而pycharm不使用。 事復三。 那怎麼辦呢? 很簡單,conda create一個虛擬環境就行,在這個虛擬環境下再pip install tensorflow的whl檔案就可以了。但問題是我在anaconda自帶的python環境裡也安裝了tensorflow,本想著tf配anaconda的各種庫在pycharm的智慧補齊下豈不美滋滋,事實證明我就是個傻x。 偏方:在pycahrm.sh裡強行export LD_LIBRARY_PATH,位置在start之前。這樣做偶爾行偶爾不行,待研究。
安裝過程的實用指令
最後把整個過程的各種指令(終端)寫上來,附帶解釋,也許能有點幫助。 .bashrc檔案中新增環境變數: export PATH=待新增路徑:$PATH 使配置立即生效: source .bashrc conda新增虛擬環境: conda create -n xxx python=x.x conda刪除虛擬環境: conda remove -n xxx --all conda呼叫和退出虛擬環境: soucre activate xxx source deactivate 更新動態連結庫: ldconfig 切換到超級使用者和退出超級使用者: sudo su exit 檢視N卡驅動詳細資訊: nvidia-smi 設定N卡驅動: nvidia-settings 檢視cuda版本: cat /usr/local/cuda/version.txt 檢視cudnn版本: cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2 檢視tensorflow版本: python import tensorflow as tf print(tf.version) 檢視tensorflow路徑: python import tensorflow as tf print(tf.path)