caffe+cuda6.5+cudnn7.0+opencv3.0搭建经验记录
前言
因?yàn)樽罱枰玫絚affe平臺(tái),于是自己試著搭一搭,這一搭就是三天,其中遇到很多的挫折,重裝系統(tǒng)也不是2,3次的事了。趁著心情還在把這個(gè)過(guò)程中遇到的一些事和問(wèn)題記錄下來(lái),一來(lái)方便以后再搭或者幫別人搭;二來(lái)也給后來(lái)著一些啟示吧。
一開(kāi)始其實(shí)真的連caffe是什么都還搞不太清楚,只把它當(dāng)做一個(gè)工具,就是知道要下載很多依賴庫(kù)。在網(wǎng)上百度ubuntu14.04+caffe然后就有一堆的教程,這其實(shí)也是個(gè)坑,教程太多也不知道哪個(gè)是對(duì)的,有時(shí)看看這個(gè),裝了一個(gè)庫(kù)后又看另外一個(gè)教程。所以必須要學(xué)會(huì)精選,最后只留下一到兩篇,就按照它來(lái)一步步安裝。我最后挑選下來(lái)的是歐陽(yáng)宇大大寫(xiě)的一份教程,非常認(rèn)真和詳細(xì),還把要下載的各種工具和庫(kù)放在網(wǎng)盤(pán)里分享出來(lái)了,非常適合新手!這里給出鏈接:Caffe + Ubuntu 15.04 + CUDA 7.5 新手安裝配置指南
一、caffe安裝
經(jīng)過(guò)幾天的了解,終于搞清楚了caffe的各步安裝情況。網(wǎng)上一般會(huì)把caffe和各種工具一起搭:cuda,cudnn,opencv,phthon,matlab等等(其實(shí)caffe官網(wǎng)也又介紹:http://caffe.berkeleyvision.org/installation.html)。其實(shí)caffe如果去掉這些工具也是可以運(yùn)行的,沒(méi)有這些工具的話只需要一步步的按照caffe官網(wǎng)的安裝教程http://caffe.berkeleyvision.org/install_apt.html?來(lái)就好了(請(qǐng)務(wù)必先把官網(wǎng)的教程看一遍!)。
1、從github中下載官方的caffe
sudo git clone https://github.com/BVLC/caffe.git當(dāng)然也可以從我最后給出的網(wǎng)盤(pán)鏈接里下載:百度網(wǎng)盤(pán)鏈接:?http://pan.baidu.com/s/1o8piCn4?密碼: jsjd
2、下載各種依賴庫(kù) sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler sudo apt-get install --no-install-recommends libboost-all-dev sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev3、BLAS(Basic Linear Algebra Subprograms 基本線性代數(shù)子程序)
常用的BLAS實(shí)現(xiàn)有:Intel MKL、atlas、OpenBLAS等。可以選擇其中一種,其中atlas的安裝最簡(jiǎn)單,其余的可以百度教程。
安裝atlas:
sudo apt-get install libatlas-base-dev
4、切換到Caffe-master的文件夾,生成Makefile.config配置文件,執(zhí)行:
cp Makefile.config.example Makefile.config5、修改Makefile.config,編譯即可使用caffe。
這里由于沒(méi)有使用cuda、cudnn等nvidia的GPU加速庫(kù),所以只需打開(kāi)CPU_ONLY即可
sudo gedit Makefile.config把 # CPU-only switch (uncomment to build without GPU support). # CPU_ONLY := 1中CPU_ONLY := 1前的”#“去掉即可。
保存!
繼續(xù)在Caffe-master文件夾目錄下:
必須根據(jù)自己CPU情況選擇4或8或16,選擇過(guò)大的數(shù)字編譯時(shí)會(huì)出錯(cuò)!!!
如果都編譯成功了,到這里其實(shí)算已經(jīng)把caffe裝好了。
如果你的電腦是有nvidia顯卡,并且支持GPU的話,可以繼續(xù)裝一些加速庫(kù),會(huì)使你跑網(wǎng)絡(luò)的時(shí)候快上很多倍。
注意!!!
在安裝下面的各種庫(kù)后需要再修改Makefile.config文件,把對(duì)應(yīng)的工具前的”#“刪去或加上。
注意,修改后需要重新make!!!
切換到Caffe-master的文件夾,
sudo make clean sudo make all -j4你可以先全部安裝了下面的各種工具后再統(tǒng)一修改Makefile.config文件,這樣就可以一次編譯就好。缺點(diǎn)是如果出問(wèn)題就不知道出現(xiàn)再哪個(gè)工具的安裝上。一個(gè)一個(gè)工具安裝再編譯缺點(diǎn)就是花費(fèi)時(shí)間可能稍長(zhǎng),但有點(diǎn)是比較穩(wěn)。二、安裝cuda6.5
官網(wǎng)安裝教程:http://developer.download.nvidia.com/compute/cuda/7.5/Prod/docs/sidebar/CUDA_Quick_Start_Guide.pdf
有兩種方法:deb版和run版。兩種都可以,前者更方便。我在這里就不詳述安裝步驟了,前者在Caffe + Ubuntu 15.04 + CUDA 7.5 新手安裝配置指南這里面和其他很多教程里都有介紹。后者請(qǐng)參考文章:Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置說(shuō)明,一定要一步一步安裝教程,不要去參考太多其他的。要不很容易在這里花掉非常多的時(shí)間。
接下來(lái)主要介紹一些我在這里遇到的問(wèn)題:
1、裝完cuda之后重啟進(jìn)不去圖形界面,就一直黑屏,只能ctrl+Alt+F1進(jìn)入文字界面。
網(wǎng)上有很多方法,但各種嘗試后發(fā)現(xiàn)直接換一個(gè)啟動(dòng)時(shí)的圖形界面最簡(jiǎn)單直接粗暴!
ctrl+alt+F1進(jìn)入文字界面 sudo stop lightdm sudo apt-get install gdm 安裝中途會(huì)讓你選一個(gè)默認(rèn)的啟動(dòng)圖形界面,選擇gdm,安裝完重啟即可 sudo reboot2、運(yùn)行samples里面的deviceQuery例子時(shí)出現(xiàn):
CUDA Device Query (Runtime API) version (CUDART static linking) cudaGetDeviceCount returned 30 -> unknown error Result = FAIL在這個(gè)論壇里找到解決方法: Could not load nvidia-uvm新建文件?/etc/modprobe.d/bumblebee.conf,并在里面寫(xiě)入
雖然不知道是什么原理,但的確這樣后再運(yùn)行那個(gè)例程就成功了。
3、運(yùn)行例程出現(xiàn)問(wèn)題:
./deviceQuery Starting...CUDA Device Query (Runtime API) version (CUDART static linking)cudaGetDeviceCount returned 38 -> no CUDA-capable device is detected Result = FAIL 這個(gè)應(yīng)該是顯卡驅(qū)動(dòng)不匹配的問(wèn)查看顯卡
lspci | grep -i nvidia然后上nvidia官網(wǎng)(http://www.nvidia.com/Download/Find.aspx?lang=en-us)查找匹配的驅(qū)動(dòng),并且要與你的cuda版本相匹配
上這個(gè)網(wǎng)站能查看哪些顯卡是支持cuda的:https://developer.nvidia.com/cuda-gpus
下載對(duì)應(yīng)的顯卡驅(qū)動(dòng)重新安裝
參考文章:Ubuntu14.04安裝NVIDIA顯卡驅(qū)動(dòng)
三、安裝cudnn7.0
安裝過(guò)程特別簡(jiǎn)單,就是下載好cudnn7.0的相應(yīng)版本的庫(kù)的后把里面的頭文件和庫(kù)文件復(fù)制到相應(yīng)的地方即可
Caffe + Ubuntu 15.04 + CUDA 7.5 新手安裝配置指南這里面也有詳細(xì)介紹就不再累贅了。
主要遇到問(wèn)題:
1、在后來(lái)編譯caffe時(shí)容易出現(xiàn)以下錯(cuò)誤:
error: ‘CUDNN_PROPAGATE_NAN’ was not declared in this scope或者其他與cudnn有關(guān)的錯(cuò)誤,90%都是cudnn版本不匹配的問(wèn)題,cudnn有v2,v3,v4,最新是v5版本,有些是版本太小,需要換大的,有些恰恰相反,多試幾個(gè)就行。先把原來(lái)的刪掉,再?gòu)?fù)制進(jìn)新的cudnn庫(kù)文件和頭文件。
有些是因?yàn)殡娔X問(wèn)題,支持不了太低版本的cudnn,可能就用不了cudnn了。例如筆記本上顯卡是GT540M,它的CUDA Capability是2.1,而官方的cudnn加速是不支持3.0以下的版本的,因此只能在Makefile.config中注釋掉USE_CUDNN這行。
=================================================================
簡(jiǎn)單講就是GPU的加速性能不夠,CUDNN只支持CUDA Capability 3.0以上的GPU加速
==================================================================
四、安裝OpenCV
github上有大神編譯好的安裝包,可以一步傻瓜式安裝。
如果想一步步安裝的可以參照這篇博客:?Ubuntu14.04安裝OpenCV3.0或Ubuntu14.04配置OpenCV3.0的方法(PS:其實(shí)對(duì)比以下兩種方法會(huì)發(fā)現(xiàn)前者是把后者的安裝步驟寫(xiě)成了一個(gè)腳本,非常方便,不僅可以一步安裝,而且可以選擇不同版本opencv的安裝)
1、提供一個(gè)百度云,里面有安裝包。百度云盤(pán)鏈接:?http://pan.baidu.com/s/1qX1uFHa?密碼:wysa
2、在Install-OpenCV-master文件夾中包含安裝各個(gè)版本opencv腳本
3、切換到目錄執(zhí)行,安裝依賴項(xiàng):?
sudo sh Ubuntu/dependencies.sh
4、執(zhí)行opencv3.0安裝腳本?
sudo sh Ubuntu/3.0/opencv3_0_0.sh 等待安裝完成即可5、修改Makefile.config
把
# Uncomment if you're using OpenCV 3 #OPENCV_VERSION := 3中OPENCV_VERSION := 3前的”#“去掉即可6、重新make
在make 之前要先把動(dòng)態(tài)鏈接庫(kù)更新
sudo ldconfig /usr/local/cuda/lib64(64位)否則在sudo make runmake時(shí)會(huì)出現(xiàn)以下錯(cuò)誤: error while loading shared libraries: libcudart.so.7.5: cannot open shared object file: No such file or directory主要遇到的問(wèn)題:
1、一步式安裝過(guò)程中遇到各種問(wèn)題,比如opencv版本下載太慢,出現(xiàn)各種bug等
以opencv3.0為例,可以打開(kāi)opencv3_0_0.sh ,找到下載安裝包的地方:
wget -O opencv-3.0.0.zip http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/3.0.0/opencv-3.0.0.zip/download里面就有opencv3.0的下載地址,可以拿到windows里面用迅雷下載(PS:這個(gè)是個(gè)網(wǎng)站地址,還不是直接的下載鏈接,下網(wǎng)站里又下載鏈接的)下載后,再安裝opencv3_0_0.sh文件后的步驟手動(dòng)進(jìn)行安裝。
2、cmake過(guò)程中卡在ippcv的下載中或者ICV的hash碼不匹配
可以自行從http://sourceforge.net/projects/opencvlibrary/files/3rdparty/ippicv這里下載,解壓到opencv-master —> 3rdparty —> ippicv —> downloads —> linux-xxxxxxxxxxxxxxxx 下面
再把選項(xiàng)-D WITH_IPP=OFF添加到上面的cmake命令中,重新cmake即可。即
sudo cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D WITH_IPP=OFF ..好了,另外還有phython,matlab等等的接口的安裝由于暫時(shí)還沒(méi)有需要就不繼續(xù)安裝了,網(wǎng)上也有很多教程。
總結(jié)
最后再總結(jié)一下:
1、最好先把大的文件都先下載好,安裝的時(shí)候就方便了,列一個(gè)大文件清單:
a、caffe-master.rar
b、cuda-repo-ubuntu1404-7-5-local_7.5-18_amd64.deb或者cuda_6.5.14_linux_64.run
c、ippicv_linux_20141027.tgz
d、cudnn的各個(gè)版本:cudnn-7.0-linux-x64-v4.0-prod.tgz/cudnn-7.0-linux-x64-v3.0-rc.tgz等
e、opencv 的各個(gè)版本:opencv-3.0.0.zip/opencv-3.1.0.zip等
這里我也提供我自己整理的資源:百度網(wǎng)盤(pán)鏈接:?http://pan.baidu.com/s/1o8piCn4?密碼: jsjd
2、必須要先了解好自己機(jī)子的各種性能,主要是顯卡性能,執(zhí)行:
cat /proc/driver/nvidia/version可以查看本機(jī)顯卡性能,比如我的機(jī)子的結(jié)果是NVRM version: NVIDIA UNIX x86_64 Kernel Module 340.96 Sun Nov 8 22:33:28 PST 2015
GCC version: gcc version 4.8.4 (Ubuntu 4.8.4-2ubuntu1~14.04.1)?
3、再?gòu)?qiáng)調(diào)一次,網(wǎng)上很多教程,可以參考,但主要就選一個(gè)教程來(lái)安裝,太多很容易亂,出錯(cuò)也不知道是誰(shuí)的錯(cuò)!
如果我的文章對(duì)你的安裝過(guò)程有一點(diǎn)點(diǎn)幫助,那就夠了!
謝謝!
參考資料
1、Caffe + Ubuntu 15.04 + CUDA 7.5 新手安裝配置指南
2、Caffe+Ubuntu14.04+CUDA7.5安裝筆記
3、caffe官方安裝教程:Ubuntu Installation
4、run方法安裝cuda6.5:Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置說(shuō)明
5、opencv3.0安裝參考:Ubuntu14.04安裝OpenCV3.0
總結(jié)
以上是生活随笔為你收集整理的caffe+cuda6.5+cudnn7.0+opencv3.0搭建经验记录的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 数据库的锁事务
- 下一篇: Bootstrap中一些常用的类名