前提
從Ubuntu裸機(jī)搭建caffe環(huán)境
機(jī)器型號(hào):
認(rèn)真研讀caffe官網(wǎng)-Ubuntu系統(tǒng)安裝要求唬血,某些依賴是針對(duì)Ubuntu不同系統(tǒng)版本的。
安裝流程
1、必備工具java8、git饼煞、vim等
2、caffe環(huán)境搭建
caffe官網(wǎng)-安裝總體要求
caffe.berkeleyvision.org/installation.html#prequequisites
caffe官網(wǎng)-Ubuntu系統(tǒng)安裝要求
caffe.berkeleyvision.org/install_apt.html
參考
blog.csdn.net/autocyz/article/details/51783857
根據(jù)官網(wǎng)要求诗越,安裝caffe相關(guān)流程如下
1)CUDA砖瞧,支持GPU模塊
2)BLAS
3)基本依賴?
boost>=1.55(親測(cè)應(yīng)是boost=1.55,其他版本編譯會(huì)報(bào)錯(cuò)H履?榇佟荣堰!坑啊=叽洹U窦帷!)
protobuf斋扰、leveldb渡八、snappy、opencv传货、hdf5屎鳍、
4)安裝python或用系統(tǒng)版本及caffe需要的python依賴
5)matlab(很多caffe工程需要)版本要求2015a, 2014a/b, 2013a/b, and 2012b
6)編譯caffe
下面將分別介紹這六步安裝教程。
CUDA安裝
官網(wǎng)
developer.nvidia.com/cuda-75-downloads-archive
官網(wǎng)有英文安裝pdf问裕,按步驟來(lái)即可逮壁。(之后可能會(huì)更安裝步驟)
查看nvcc編譯器版本
nvcc -V
查看NVIDIA顯卡驅(qū)動(dòng)和gcc版本
cat /proc/driver/nvidia/version
cuDNN
developer.nvidia.com/rdp/cudnn-download
注意自己編譯的包是cuda還是cuda7.5,我是在cuda-7.5下編譯的粮宛,所以我要將下面cuda改為cuda-7.5
給拷貝的文件增加可讀權(quán)限
sudo chmod a+r /usr/local/cuda-7.5/include/cudnn.h /usr/local/cuda-7.5/lib64/libcudnn*?
在Makefile.config文件中對(duì)下面一行取消注釋
USE_CUDNN := 1
BLAS
我選擇的是安裝intel提供的MKL庫(kù)窥淆,性能是三者中最高的。
根據(jù)官網(wǎng)鏈接下載好mkl(注意選擇對(duì)應(yīng)系統(tǒng)的版本窟勃,我選擇的是最新版2018update1)祖乳,解壓進(jìn)入到目錄,執(zhí)行安裝命令
sudo sh install.sh
配置環(huán)境變量(參考caffe官網(wǎng)秉氧,根據(jù)各自系統(tǒng)選擇)
source /opt/intel/mkl/bin/mklvars.sh intel64
在/etc/ld.so.conf.d下新建intel-mkl.conf,添加以下路徑蜒秤,完成lib文件的鏈接
/opt/intel/mkl/lib/intel64
sudo ldconfig // 更新軟鏈汁咏,一定要sudo
設(shè)置Makefile.config
BLAS := mkl
基本依賴
build-essential提供編譯程序必須軟件包的列表信息
sudo apt-get install build-essential
安裝官網(wǎng)要求的基本依賴,軟件在不同系統(tǒng)下的命名可能會(huì)有區(qū)別
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 #該步自動(dòng)安裝注意檢查boost版本作媚,14.04版本運(yùn)行該命令裝的是1.54版本攘滩,16.04安裝的是1.58,但是如果不是1.55則編譯會(huì)報(bào)錯(cuò)纸泡;安裝boost1.55見(jiàn)文末-編譯并安裝boost1.55
安裝14.04要求的基本依賴
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
安裝完通過(guò)一下命令查看該軟件在系統(tǒng)上的安裝版本漂问,防止某些依賴安裝失敗
dpkg -l 包名
python及caffe需要的python依賴
caffe工程里為我們準(zhǔn)備了相關(guān)的python依賴,位置在caffe/python女揭。
坑來(lái)了T榧佟!文件中matplotlib如果默認(rèn)用下面一鍵安裝的命令則安裝的是2.1.0版本吧兔,之后會(huì)遇到cannot import name cbook的問(wèn)題磷仰,所以該依賴請(qǐng)使用一下命令安裝
sudo apt-get install python-matplotlib
修改好requirements.txt后,執(zhí)行以下命令一鍵安裝caffe工程需要的python依賴境蔼,該命令將按照requirements.txt文件中給出的版本號(hào)要求安裝所有的依賴
sudo pip install -r caffe/python/requirements.txt
pip list // 查看安裝的python
如果報(bào)錯(cuò)?numpy.distutils.system_info.NotFoundError: no lapack/blas resources found?灶平,可能是缺少liblapack-dev伺通,查看
blog.csdn.net/lingfeng892/article/details/50425547
編譯caffe
編譯前請(qǐng)重點(diǎn)查看Makefile.config以下變量是否配置好
CUDA_ARCH #CUDA計(jì)算能力設(shè)置,參考?developer.nvidia.com/cuda-gpus
MATLAB_DIR
PYTHON_INCLUDE
CUDA_DIR
編譯caffe
make all -j8 // -j8表示開(kāi)啟八個(gè)線程編譯逢享,具體線程數(shù)依據(jù)機(jī)器cpu核數(shù)
make test -j8
make runtest -j8
make matcaffe // 將caffe導(dǎo)入matlab
make pycaffe // 將caffe導(dǎo)入python罐监,可以在python下通過(guò)import caffe查看是否導(dǎo)入成功;該步驟容易出現(xiàn)諸多錯(cuò)誤瞒爬,不要著急參考編譯出現(xiàn)問(wèn)題以及文末的caffe安裝問(wèn)題匯總
編譯出現(xiàn)問(wèn)題
1弓柱、TypeParam = caffe::DoubleGPU? ?TypeParam = caffe::GPUDevice
參考?github.com/BVLC/caffe/issues/4229
添加環(huán)境變量
export CUDA_VISIBLE_DEVICES=0
2、error == cudaSuccess (8 vs. 0)
參考?blog.csdn.net/u010167269/article/details/50703923
編譯并安裝boost1.55
先卸載安裝的其他boost版本
執(zhí)行??命令下載boost1.55
wget?https://jaist.dl.sourceforge.net/project/boost/boost/1.55.0/boost_1_55_0.tar.gz
編譯boost1.55參考
blog.csdn.net/zc02051126/article/details/22061773
編譯會(huì)更新動(dòng)態(tài)庫(kù)配置文件/etc/ld.so.conf疮鲫,需要執(zhí)行以下命令創(chuàng)建動(dòng)態(tài)裝入程序所需的鏈接
sudo lpconfig
編譯出現(xiàn)問(wèn)題
fatal error: bzlib.h: No such file or directory
sudo apt-get install libbz2-dev
caffe安裝問(wèn)題匯總
參考(兩個(gè)博文很厲害吆你,專業(yè)配置caffe50年!?》浮)