最近幾天一直嘗試搭建Theano深度學習開發環境,並安裝英偉達CUDA Toolkit。這期間,有想過在Windows上搭建的,但是從網上了解後,發現還是在Linux環境下更加合適。在搭建這個開發環境的過程中,其實入了不少坑,有點曲折。本不打算寫搭建過程的,因為網上確實有不少不錯的安裝步驟,以及官網也有安裝教程。But,鑒於被坑了好幾天,還是記錄一下,長長記性 :)
期間安裝Ubuntu 14.04超過4次(原因:有些軟件依賴問題無法解決,更換軟件源貌似也不可以。不過今天把軟件源換成主服務器後,就正常了,但是我的無線網速度比較慢,所以使用主服務器後,下載速度明顯要慢了不少。)。
嘗試安裝Fedora操作系統1次,因為也想過在這個系統上搭建環境的,因為Ubuntu 14.04上面的部分依賴總是搞不定。但是因為網卡驅動的問題,始終無法聯網;無法聯網,自然就沒法安裝編譯器,沒有編譯器,沒法安裝網卡驅動(因為需要編譯驅動),最後放棄了這個平台。
嘗試安裝CentOS操作系統1次,其實根本沒有安裝成功,原因是我的獨立顯卡驅動問題,導致安裝程序的圖形界面上的所有文字都是模糊的,甚至連“退出安裝”按鈕文字我都識別不出來,最後放棄了。
e
鍵,進入編輯頁面,在倒數第二行中,ro quiet splash
後面添加nomodeset
,這樣進入系統後不會因為獨顯驅動問題而導致黑屏了;/boot/grub/grub.cfg
文件,搜索ro quiet splash
關鍵詞,同樣追加nomodeset
,這樣不用每次啟動系統前重復上述步驟了。這些工具在後面可能會使用到,如編譯器等。
sudo apt-get install -y python-dev python-pip python-nose gcc g++ git gfortran
這些軟件包必須在安裝Numpy和Scipy之前安裝
sudo apt-get install -y libopenblas-dev liblapack-dev libatlas-base-dev
在官方教程中使用了apt-get
方式安裝的,但是貌似我確實在安裝後沒有通過單元測試,有不少錯誤產生。尤其是後面安裝的SciPy更是如此。可能和我之前沒有把需要的工具包安裝齊全有關系吧。
# 安裝NumPy,這個安裝過程需要等待會,因為需要編譯,所以得花一點時間。
# 實際上後面安裝的SciPy和Theano都會花時間編譯的,整個安裝過程還是要挺久的。
sudo pip install numpy
# 進行測試。
python -c 'import numpy; numpy.test()'
必須要保證上面的測試通過,然後再繼續下一步,確保每一步都是正確的。沒有Errors則通過測試。測試結果如下。
# 安裝方法,耐心等待編譯吧:)
sudo pip install scipy
# 進行測試
python -c 'import scipy; scipy.test()'
必須保證scipy
也正常通過測試,這樣才可以繼續安裝下面的Theano。測試結果如下圖:
--------------------------------------分割線 --------------------------------------
Ubuntu下CUDA(含GPU卡驅動)安裝過程 http://www.linuxidc.com/Linux/2015-07/120456.htm
Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置說明 http://www.linuxidc.com/Linux/2015-04/116444.htm
Ubuntu 14.04 安裝配置CUDA http://www.linuxidc.com/Linux/2014-10/107501.htm
Ubuntu 12.04配置NVIDIA CUDA5.5實錄 http://www.linuxidc.com/Linux/2014-10/107502.htm
Ubuntu安裝Theano+CUDA http://www.linuxidc.com/Linux/2014-10/107503.htm
關於Ubuntu 12.04 下 CUDA5.5 的安裝請參看如下鏈接 Ubuntu 12.04 安裝 CUDA-5.5
--------------------------------------分割線 --------------------------------------
# 安裝方法,還是要耐心等待編譯安裝的,感覺比較耗時
sudo pip install Theano
# 開始測試
sudo python -c 'import theano; theano.test()'
好吧,我感覺這個步驟中的Theano
測試花了好長時間,所以,還是耐心等待吧。最後結果如下。
在安裝這個英偉達CUDA Toolkit時,還是遇到了不少問題。以下記錄安裝過程,詳細的說明文檔參見英偉達官方提供的Installation Guide for Linux。需要注意的是,該安裝文件已經包含了英偉達較新的顯卡驅動,所以不用單獨安裝獨顯驅動的。
進入CUDA Toolkit下載頁面
選擇對應的Ubuntu 14.04操作系統,並且選擇下載runfile(1.1G)
文件,同時記錄對應的MD5值,用於校驗下載文檔有沒有損壞
下載GPU Development Kit
下載完成後,最後校驗一下下載文件與下載頁面提供的文件MD5值是否相同,確保下載到的安裝包是完好無損的。
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
/usr/lib/x86_64-linux-gnu/
目錄下找到了名為libGLU.so.1.3.1
,所以在嘗試建立鏈接到/usr/lib/
目錄下後,安裝Samples時就正常了。
sudo ln -s /usr/lib/x86_64-linux-gnu/libGLU.so.1.3.1 /usr/lib/libGLU.so
sudo service lightdm stop
cuda_7.5.18_linux.run
以及cuda_352_39_gdk_linux.run
添加可執行權限sudo ./cuda_352_39_gdk_linux .run
sudo ./cuda_7.5.18_linux.run
,安裝過程直接根據提示進行下去即可sudo service lightdm start