Ubuntu 16.04安装配置Caffe

显卡型号:GTX860M

首先按照上一个教程配置好n卡驱动、cuda、cuDNN、opencv

Ubuntu 16.04安装CUDA8.0 + cuDNN5.1 + OpenCV3.1.0

别忘了安装依赖

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 libopenblas-dev liblapack-dev libatlas-base-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev

完事之后就可以开始啦

1、使用Git直接下载Caffe非常简单,或者去https://github.com/BVLC/caffe下载。下载完成后,找到caffe-master.zip,方便起见,我们用unzip命令解压到home下,然后重命名为caffe

2、因为make指令只能make Makefile.config文件,而Makefile.config.example是caffe给出的makefile例子,因此,首先将Makefile.config.example的内容复制到Makefile.config:

 sudo cp Makefile.config.example Makefile.config 

3、打开并修改配置文件:

 sudo gedit Makefile.config

根据个人情况修改文件:

(1)若使用cudnn,则将

#USE_CUDNN := 1

修改成:

USE_CUDNN := 1

(2)若使用的opencv版本是3的,则将

#OPENCV_VERSION := 3

修改为:

OPENCV_VERSION := 3

(3)若要使用python来编写layer,则将

#WITH_PYTHON_LAYER := 1  

修改为

WITH_PYTHON_LAYER := 1 
(4)重要的一项 :
# Whatever else you find you need goes here. 

下面的

1 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
2 LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib 

修改为:     

1 INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial
2 LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial 

这是因为Ubuntu16.04的文件包含位置发生了变化,尤其是需要用到的hdf5的位置,所以需要更改这一路径。

4、修改makefile文件。打开makefile文件,将:

NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)

替换为:

NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)

5、编辑/usr/local/cuda/include/host_config.h,将其中的第115行注释掉,也就是把:

#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!

替换为:

//#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!

6、编译

make all -j16

要注意编译过程中可能会出现如下错误:

错误内容1:

"fatal error: hdf5.h: 没有那个文件或目录"

解决办法:

step1:在Makefile.config文件的第85行,添加/usr/include/hdf5/serial/ 到 INCLUDE_DIRS,也就是将:

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include

替换为:

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serial/

stept2:在Makefile文件的第173行,把 hdf5_hl 和hdf5修改为hdf5_serial_hl 和 hdf5_serial,也就是将:

LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5

改为:

LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

错误内容2:

"libcudnn.so.5 cannot open shared object file: No such file or directory"

解决办法是将一些文件复制到/usr/local/lib文件夹下:

#注意自己CUDA的版本号!

sudo cp /usr/local/cuda-8.0/lib64/libcudart.so.8.0 /usr/local/lib/libcudart.so.8.0 && sudo ldconfig
sudo cp /usr/local/cuda-8.0/lib64/libcublas.so.8.0 /usr/local/lib/libcublas.so.8.0 && sudo ldconfig
sudo cp /usr/local/cuda-8.0/lib64/libcurand.so.8.0 /usr/local/lib/libcurand.so.8.0 && sudo ldconfig
sudo cp /usr/local/cuda-8.0/lib64/libcudnn.so.5 /usr/local/lib/libcudnn.so.5 && sudo ldconfig

7、测试

sudo make runtest

如果运行之后出现下图,说明caffe配置成功。

image

 到此caffe配置完毕!


MNIST数据集测试

配置caffe完成后,我们可以利用MNIST数据集对caffe进行测试,过程如下:
 
1、将终端定位到Caffe根目录
cd ~/caffe
 
2、下载MNIST数据库并解压缩
./data/mnist/get_mnist.sh
 
3、将其转换成Lmdb数据库格式
./examples/mnist/create_mnist.sh
 
4、训练网络
./examples/mnist/train_lenet.sh

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值