首頁 > 軟體

Ubuntu 14.04下安裝Caffe總結

2020-06-16 17:27:14

雖然Deep Learning已經不是什麼新鮮的東西了,但是由於裝置原因,自己一直沒有涉足。前幾天有幸換了一台自帶GPU的Workstation,甚是高興。於是迫不及待地裝了個Ubuntu系統,開始設定DeepLearning框架Caffe。前後共花了差不多兩天時間,終於把它配好了。配了這麼多年的軟體,Caffe應該是我配過最複雜的軟體,沒有之一。終於知道為什麼用Caffe的人這麼多,親自去配它的人這麼少了。以下將一步步講解設定Caffe的過程,希望對初學者有點幫助。PS:雖然官網http://caffe.berkeleyvision.org/installation.html給出了設定的過程,但是非常籠統,看著看著就不知道自己該幹嘛了。

一、NVIDIA驅動和CUDAToolkit的安裝

1.      安裝前需要注意的問題:

a.      檢查自己的GPU是否支援CUDA,linux可用以下命令來檢視GPU型號:

Lspci | grep –I nvidia

只要GPU型號可以在https://developer.nvidia.com/cuda-gpus找到,就是支援CUDA的,比如我的GPU型號是:GeForceGTX Titan

b.      檢查自己的作業系統是不是CUDA支援的,可以輸入以下命令:

uname -m && cat /etc/*release

CUDA支援的作業系統在以下網址可以找到http://docs.nvidia.com/cuda/cuda-toolkit-release-notes/#overview

c.      檢查作業系統是否安裝了gcc,可用以下命令

gcc –version

很多作業系統都預裝有gcc,如果你的沒有就先安裝一下。

d.      去https://developer.nvidia.com/cuda-downloads下載最新版的CUDA,目前是6.5的。這裡注意選擇與自己機器和作業系統相匹配的(比如我的是64位元的Ubuntu14.04)。友情提醒:檔案有點大,大概1G,網速不好的同學請耐心等待。

e.      驗證下載的CUDA是否有效:

md5sum 安裝包名字>

執行完上述命令後會出現一串md5值,例如我的是:90b1b8f77313600cc294d9271741f4da,看看https://developer.nvidia.com/cuda-downloads/checksums列表中是否能找到你的md5值,如果不能找到,那就說明之前下的安裝包有問題,要重新下載。

f.      處理版本衝突問題,第一次安裝可以跳過這點。如果之前有裝過NVIDIA驅動和CUDA的話,要解除安裝乾淨,具體解除安裝方法參見http://developer.download.nvidia.com/compute/cuda/6_5/rel/docs/CUDA_Getting_Started_Linux.pdf

2.      安裝時需要注意的問題:

a.    退出GUI介面,操作方法是:同時按:CTRL+ALT+F1(F2-F6),切換到TTY1-6命令列模式。退出GUI介面後需要輸入使用者名稱、密碼登陸。登陸後關閉桌面服務:

sudo stop lightdm

這步很重要,直接在GUI介面裝肯定是會失敗的!

b.  官網說安裝前需要Interaction with Nouveau,因為Nouveau是一個開源的顯示卡驅動,Ubuntu14.04預設安裝了,但是它可能會影響NVIDIA驅動的安裝。這一步我直接跳過了,事實證明並沒有影響。(不放心的同學可以按官網http://developer.download.nvidia.com/compute/cuda/6_5/rel/docs/CUDA_Getting_Started_Linux.pdf那樣多操作幾步。)

c.    現在可以開始安裝了。先切換到CUDA安裝包所在的位置,執行以下命令:

sudo sh cuda_6.5.14_linux_64.run

這邊一路accept-yes-enter就行

執行完後出現以下結果:

Driver: Installed requirereboot

Toolkit: installskip

Samples: installskip

看到了嗎,這個CUDA安裝包事實上包含了Driver,Toolkit和Samples三部分,第一次安裝時把驅動裝上了,只不過要重新啟動。重新啟動了一下,還是跟上面一樣,退出GUI,重新執行以下命令:

sudo sh cuda_6.5.14_linux_64.run

結果如下:

Driver:Installed

Toolkit: Installed in/usr/local/cuda-6.5

Samples: Installed in/home/Changzhi, but missing recommendedlibraries

這次就安裝成功了,但是缺少了一些推薦的庫。

d.      這一步顯然要安裝那些推薦的庫,沒什麼好說的,按官網推薦的,需要安裝以下庫:

sudo apt-get install freeglut3-dev build-essential libx11-devlibxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesalibglu1-mesa-dev

e.      裝完以後就可以回到GUI介面了,執行

sudo start lightdm

f.      按照官網http://caffe.berkeleyvision.org/installation.html#prerequisites的要求,還需要安裝一些dependencies,我的系統是Ubuntu14.04,所以還需要執行以下兩步:

sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-devlibopencv-dev libboost-all-dev libhdf5-serial-dev

sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-devprotobuf-compiler

3.      安裝後需要注意的問題:

a.      設定環境變數:

在/etc/profile最後面新增一句(新增不了的可以切換到root使用者)

export PATH=$PATH:/usr/local/cuda-6.5/bin

儲存後執行以下命令,是環境變數立即生效

source /etc/profile

b.      新增lib庫路徑

在/etc/ld.so.conf.d加入檔案cuda.conf,寫入

/usr/local/cuda-6.5/lib64

同樣,執行下列命令使其立即生效

sudo ldconfig

4.      驗證安裝結果

a.      驗證驅動的版本,和上述gcc類似,就是驗證驅動和有沒有問題

cat /proc/driver/nvidia/version

b.      編譯例子

先看一下編譯器版本,執行

nvcc –V

          不出意外,這裡會提示nvcc沒有安裝,其實就是之前裝的NVIDIA-CUDA-Toolkit的編譯器沒有安裝完整,根據提示安裝就好:

              sudoapt-get install nvidia-cuda-toolkit

                    這個安裝也需要很長時間,請耐心等待。安裝完後就可以編譯例子了,例子預設安裝在/home/username/NVIDIA_CUDA-6.5_Samples,進入這個目錄,執行

              make

        該過程也比較漫長,請耐心等待。

c.      Running the binaries.

全部編譯玩後,進入/home/username/NVIDIA_CUDA-6.5_Samples/bin/x86_64/linux/release,執行

sudo ./deviceQuery

如果出現以下資訊,則驅動及顯示卡安裝成功:

Note: 如果大家第一次安裝顯示的CUDA driver version和runtimeversion是一樣的話,以下標綠的部分可以略過。

我第一次安裝時,出現了“cuda driver version isinsufficient for cudaruntime”這個錯誤,就是預設安裝時cuda版本是6.5,但是驅動版本還是5.5。解決這個問題肯定是安裝個6.5版的cuda驅動就行了。但問題沒有那麼簡單。我從官網下了6.5的cuda驅動,安裝後,別說解決問題,連ubuntu系統都進不去了。開機時就左上角有個小橫線在一閃一閃的,還什麼都不能輸入,真是能把人急死!後來網上找到了解決辦法如下:

  login the system using root recover mode,execute:

      sudo apt-get purge nvidia*

      sudo apt-get install nvidia-current

      sudoreboot

系統啟動不了原因是顯示卡驅動衝突,所以我們只需解除安裝乾淨前一個驅動,只保留一個最新版的驅動即可。這個recovermode開機時按住左邊的shift鍵就可以進入。

至此,NVIDIA驅動和CUDAToolkit的安裝完成。

二、BLAS的安裝

這邊選擇的是很多網友推薦的intel MKL,這個是收費軟體,但學生可以申請免費使用,申請地址https://software.intel.com/en-us/intel-education-offerings#pid-2460-93,這裡注意選擇自己對應作業系統的版本,還要申請時只能用edu的郵箱。這個軟體非常大,3G+,下載時可以選擇線上安裝或者離線下載,這裡強烈推薦離線下載再安裝,因為我就是線上安裝時出現問題了,後來解除安裝重新離線安裝的。我是linux系統,所以下載的是parallel_studio_xe_2015_update1.tgz,解壓後進入目錄,執行

sudo ./install_GUI.sh

這是GUI介面安裝,和windows一樣,按照提示一步步安裝就行了,路徑什麼的選擇預設就好。裝好後需要新增library路徑,具體操作是在/etc/ld.so.conf.d/下新建檔案intel_mkl.conf,沒許可權的話切換到root使用者來操作,建好後在檔案中新增:

/opt/intel/lib/intel64

/opt/intel/mkl/lib/intel64

安裝mkl時如果不是選擇預設路徑的,以上操作記得換成自己的安裝路徑。新增完內容後執行以下命令使其立即生效。

sudo ldconfig

三、OpenCV的安裝

這個盡量不要手動安裝, Github上有人已經寫好了完整的安裝指令碼:https://github.com/jayrambhia/Install-OpenCV,下載後解壓,然後進去該目錄,選擇自己的作業系統,比如我的是Ubuntu,執行

sudo ./dependencies.sh

sudo ./open2_4_9.sh

其中第一步是安裝依賴項,第二部是安裝opencv,這個過程大概二三十分鐘,慢慢等。

四、Caffe的安裝和編譯

Caffe下載地址:https://github.com/BVLC/caffe

下載後,進入Caffe目錄執行

cp Makefile.config.example Makefile.config

然後修改Makefile.config中的BLAS:= atlas為BLAS := mkl,儲存退出就行了。

最後是編譯,執行以下三條命令:

make all

make test

make runtest

前兩步是肯定沒問題的,第三部runtest,最後會有兩項不通過,但是還是pass了,不影響,應該是沒裝python的原因。如果不需要在python下用caffe,就可以不管了。

至此Caffe安裝完成!

Caffe 深度學習入門教學  http://www.linuxidc.com/Linux/2016-11/136774.htm

Ubuntu 16.04下Matlab2014a+Anaconda2+OpenCV3.1+Caffe安裝 http://www.linuxidc.com/Linux/2016-07/132860.htm

Ubuntu 16.04系統下CUDA7.5設定Caffe教學 http://www.linuxidc.com/Linux/2016-07/132859.htm

Caffe在Ubuntu 14.04 64bit 下的安裝 http://www.linuxidc.com/Linux/2015-07/120449.htm

深度學習框架Caffe在Ubuntu下編譯安裝  http://www.linuxidc.com/Linux/2016-07/133225.htm

Caffe + Ubuntu 14.04 64bit + CUDA 6.5 設定說明  http://www.linuxidc.com/Linux/2015-04/116444.htm

Ubuntu 16.04上安裝Caffe http://www.linuxidc.com/Linux/2016-08/134585.htm

Caffe設定簡明教學 ( Ubuntu 14.04 / CUDA 7.5 / cuDNN 5.1 / OpenCV 3.1 )  http://www.linuxidc.com/Linux/2016-09/135016.htm

Ubuntu 16.04上安裝Caffe(CPU only)  http://www.linuxidc.com/Linux/2016-09/135034.htm


IT145.com E-mail:sddin#qq.com