0%

在 Ubuntu 12.04 上面安装 CAFFE

对 Linux 不太熟悉的同学,CUDA 和 MKL 的安装最好选择默认路径,因为后面给出的例子都是在默认安装路径的下的配置。
教程不是非常详细,如果了解 Linux 的一些基本内容,该教程可以帮助你顺利完成 CAFFE 的安装。
如果对 Linux 比较熟悉,完全可以抛开本教程,按照官方教程安装成功,本教程主要是写给对于 Linux 不是很熟悉的同学。

安装环境

Ubuntu 12.04 LTS

安装依赖

  • 安装 gcc 等编译工具
1
apt-get install build-essential
  • fortran 编译工具(安装 python wrapper 时候需要 fortran 编译器)
1
apt-get install gfortran
  • 安装 git (下载 caffe 的时候会用到)
1
apt-get install git
  • 安装其他依赖
1
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev
  • 安装 glog
1
2
3
wget http://google-glog.googlecode.com/files/glog-0.3.3.tar.gz
tar xf glog-0.3.3.tar.gz
./configure; make install

安装 CUDA toolkit

*下载 cuda toolkit

1
wget http://developer.download.nvidia.com/compute/cuda/6_0/rel/installers/cuda_6.0.37_linux_64.run
  • 如果你要安装 driver(不安装也不会有问题,如果没有 GPU 的话,一定不能安装 driver,因为 CUDA 找不到 GPU,安装会失败),还要切换到 text 模式,然后停掉图形界面,方法如下
1
sudo service lightdm stop

** 添加 cuda_6.0.37_linux_64.run 的执行权限:

1
chmod a+x cuda_6.0.37_linux_64.run
  • 安装 cuda_6.0.37_linux_64.run:
1
./ cuda_6.0.37_linux_64.run

记住安装的路径(A),后面配置Makefile.config会用到

安装 BLAS

可以安装网站上提供的任意一个(ATLAS、MKL、OpenBLAS),目前我安装过 ATLAS 和 MKL,MKL 的数度大约是 ATLAS 的 7 倍,其中 MKL 是 Intel 官方推出的线性计算库,下载需要注册帐号,并且收费。

  • 安装 ATLAS
1
sudo apt-get install libatlas-base-dev
  • 安装 MKL:
    ** 下载并解压 MKL
    ** 进入到解压的目录:

    1
    chmod a+x install.sh&&./install.sh

安装 CAFFE

  • 把代码 clone 到本地
1
git clone https://github.com/BVLC/caffe.git
  • 切换到 caffe 目录
1
cd caffe
  • 复制 Makefile.config
1
cp Makefile.config.example Makefile.config
  • 编辑 Makefile.config
    ** 配置 CUDA_DIR
    CUDA_DIR := /usr/local/cuda (cuda 的安装路径,即上面 A 指定的目录)
    ** 配置 BLAS
    BLAS := atlas
    或者
    BLAS := mkl,此种配置需要继续配置 mkl 的 include 和 lib,如下:
    BLAS_INCLUDE := /opt/intel/mkl/include(mkl的位置,此处使用的是MKL默认路径)
    BLAS_LIB := /opt/intel/mkl/lib/intel64(mkl的位置,此处使用的是MKL默认路径)

  • 配置 Python

1
2
3
4
PYTHON_INCLUDE := /usr/local/include/python2.7 \
/usr/local/lib/python2.7/dist-packages/numpy/core/include \
/usr/include/python2.7
PYTHON_LIB := /usr/local/lib /usr/lib
  • 配置相关路径信息
1
2
INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include
LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib
  • 编译 CAFFE
1
2
3
make all
make test
make runtest

到此就完成了 CAFFE 安装的主体部分。为了使 CAFFE 能够使用,还需要配置环境变量,方法如下:
配置LD_LIBRARY_PATH,最好写入到 /.bashrc 中 (如果写入到`/.bashrc, 写入并保存之后记得 source ~/.bashrc`):

1
export LD_LIBRARY_PATH=/usr/local/cuda/lib64/:/opt/intel/mkl/lib/intel64:$LD_LIBRARY_PATH

到此处 caffe 的安装工作已完成。下面是安装 python wrapper 的过程 (optional)
切换到 caffe/python,选用豆瓣的源:

1
2
pip install numpy # (如果跳过这一步,后面会出错,我猜是requirements.txt中package顺序的问题)
pip install -r /path/to/caffe/python/requirements.txt –i http://pypi.douban.com/simple/

切换到 caffe 的根目录然后

1
make pycaffe