前言
雖然有很多教程都給出了如何在Ubuntu上安裝Tensorflow,但是卻沒有一篇文章講如何在Deepin系統安裝Tensorflow,這里將安裝過程的幾個要點講解一下
流程
- 首先下載Nvidia的Linux驅動。在官網可以下載。然后運行,如果不能運行,則需要修改驅動運行權限,使用chmod u+x來添加運行權限。關于deepin安裝顯卡驅動,可以參考這個文章 https://wiki.deepin.org/index.php?title=%E6%98%BE%E5%8D%A1
- 安裝Docker-ce。這里一定要遵循官方的安裝方案,只此一個方法可以正常安裝最新版docker。https://wiki.deepin.org/index.php?title=Docker
- 下載Nvidia-docker。在Github的Nvidia-Docker頁面找到Ubuntu的安裝包和安裝步驟,安裝即可
- 接下來運行
docker run -it -p 8888:8888 tensorflow/tensorflow:latest-gpu
此時可以進入官方的tensorflow帶GPU版本的鏡像啦,打開localhost:8888可以看到jupyter的頁面
坑
在安裝Nvidia顯卡驅動的時候,根據安裝軟件的提示,需要關閉Linux的桌面系統X server,此時可以通過tty1~6來進行終端操作。但是如果Deepin已經安裝了自帶的Nvidia驅動,要停止lightdm服務時,在Deepin在關閉X server的同時,顯示器也關閉了,無法顯示tty1 ~6的屏幕,由于這個問題,導致Nvidia驅動無法安裝。即使手動卸載安裝的Deepin官方Nvidia驅動,經過了繁瑣的卸載指令,在切換到tty1 ~6后,在關閉圖形界面的時候,仍然會導致tty屏幕被關閉,黑屏一片,無法繼續后面的驅動卸載和重新安裝官方Nvidia驅動。
解決方案
為了避免Nvidia驅動無法安裝,又能簡潔科學的操作,所以必須在第一次安裝Deepin系統的時候,在未安裝顯卡驅動的情況下對電腦進行操作進行安裝Nvidia顯卡官方linux驅動,首先按下快捷鍵“Ctrl+Alt+F2”,進入tty2,然后輸入sudo systemctl stop lightdm
停止lightdm服務,此時電腦關閉X server的時候不會導致顯示器的關閉,之后運行chmod u+x NVIDIA-Linux-x86_64-352.55.run
#賦予可執行權限 以及sudo ./NVIDIA-Linux-x86_64-352.55.run
#安裝驅動文件 然后重啟就可以正常的使用官方閉源驅動啦。
后續
使用GPU來運行Tensorflow程序是非常快的。一般的程序可以提速10倍以上,有些程序可以提速50到100倍的速度,所以使用GPU來進行Tensorflow編程是非常有必要的。
另外,不知道是Deepin的問題還是Nvidia-Dcoker的問題還是驅動的問題,在電腦待機之后會導致Tensorflow鏡像出錯,所以在訓練的時候不要讓機器進行待機動作。