特别说明:
本文使用2017年1月5日下载的caffe-master版本,运行平台为:Ubuntu 14.04,CUDA7.5,cuDNN v5.0,Matlab 2014b
在此特别感谢一下阳博士以及欧新宇老师。
一、 CUDA
1. 安装CUDA Toolkit
CUDA官方网址:https://developer.nvidia.com/cuda-75-downloads-archive 下载对应的版本
$ sudo dpkg -i cuda-repo-ubuntu1404-7-5-local_7.5-18_amd64
$ sudo apt-get update
$ sudo apt-get install -y cuda
2. 设置环境变量
$ vim ~/.bashrc
(注:如果显示没有安装vim,则先安装vim。 sudo apt-get install vim)
在末尾添加(路径一定不要写错):
export PATH=/usr/local/cuda/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda/lib64:$LD_LIBRARY_PATH
保存退出,然后使其生效
$ sudo source ~/.bashrc
(注:如果显示没有安装source,则先安装source。 sudo apt-get install source)
编辑/etc/ld.so.conf
$ vim /etc/ld.so.conf
添加如下内容:
/usr/local/cuda-7.5/lib64
保存退出,执行:
$ sudo ldconfig
3. 安装 cuDNN(可选)
cuDNN官网网址:https://developer.nvidia.com/cudnn 下载对应的版本(需要注册才能下载)$ tar zxvf cudnn-7.5-linux-x64-v5.0-ga.tgz
$ cd cuda
$ sudo cp include/cudnn.h /usr/local/include
$ sudo cp lib64/libcudnn.* /usr/local/lib
$ sudo ln -sf /usr/local/lib/libcudnn.so.5.0.5 /usr/local/lib/libcudnn.so.5
$ sudo ln -sf /usr/local/lib/libcudnn.so.5 /usr/local/lib/libcudnn.so
$ sudo ldconfig -v
$ cd ..
$ rm -r cuda
4. 查看CUDA是否安装成功(可选,最好查看一下)
$ cd /usr/local/cuda-7.5/samples
$ sudo make
整个过程得好几分钟,编译完成后执行:
$ cd bin/x86_64/linux/release
$ ./deviceQuery
如出现显卡信息,则CUDA安装成功。
二、安装依赖项
1. General 依赖项 (参照caffe官网)
$ 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
2. Remaining 依赖项, Ubuntu14.04
$ sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
三、BLAS
ATLAS,OpenBLAS,MKL三者任选其一。本篇博文选择安装ATLAS。
$ sudo apt-get install libatlas-base-dev
四、MATLAB(可选)
本篇博文安装的是MATLAB2014b,请到网上搜索相关下载资源以及破解文件。
首先将破解文件中的install.jar取代MATLAB安装文件java/jar/install.jar。
cd到MATLAB根目录下,安装(本篇博文MATLAB根目录为Matlab)
$ chmod 777 Matlab -R
$ cd Matlab
$ ./install
激活文件选择破解文件中的license.lic
安装完成后将破解文件中的libmservices.so 拷贝至 /usr/local/MATLAB/R2014b/bin/glnxa64中覆盖原文件。
此时,安装完成。
$ cd /usr/local/MATLAB/R2014b/bin
$ ./matlab
即可启动matlab
注:可以建立一个软链接,以后直接在命令行下直接输入matlab即可启动MATLAB,如下
$ sudo ln -s /usr/local/MATLAB/R2014b/bin/matlab /usr/local/bin/matlab
在下面编译matcaffe时会出现g++版本过高,将g++将为4.7,如下
$ sudo apt-get install gcc-4.7 g++-4.7
$ cd /usr/bin
$ ln -s gcc-4.7 gcc
$ ln -s g++-4.7 g++
五、Caffe
$ sudo apt-get install git
$ git clone https://github.com/BVLC/caffe.git
$ cd caffe
$ cp Makefile.config.example Makefile.config
$ vim Makefile.config
编辑配置文件Makefile.config:
1). 是否使用了cuDNN,如果安装了cuDNN,则把相应行的注释去掉;
2). BALS,如果选择了使用ATLAS,则不需要修改;
3). 修改MATLAB_DIR这一路径,改为MATLAB安装的目录,我的默认为 /usr/local/MATLAB/R2014b
保存退出,然后编译caffe
$ make all -j
$ make pycaffe
$ make matcaffe
如果没有报错,则编译成功。
跑一下caffe中的例子:(参照caffe官网)
$ cd caffe
$ ./data/mnist/get_mnist.sh
$ ./examples/mnist/create_mnist.sh
$ ./examples/mnist/train_lenet.sh
注:train_lenet 训练网络这一步,我的电脑大概需要27s。