Ubuntu15.04+cuda7.0+caffe+notebook

来源:互联网 发布:移动网络改dns 编辑:程序博客网 时间:2024/05/10 20:05

因为要回家几天,这样就只能在笔记本上来跑caffe,于是就开始折腾了。

整个过程分为四个部分,第一步,cuda的安装;第二步Python的安装;第三步matlab的安装,第四步caffe的安装。

本文参考骑士大神的博客,链接:https://ouxinyu.github.io/Blogs/20140723001.html

非常感谢!


第一步 安装cuda7.0


该方法比较简单,不需要切换到tty模式。这里以CUDA 7.0为例。更重要的是解决了笔记本的双显卡困扰,一次成功。

cuda下载链接:https://developer.nvidia.com/cuda-toolkit-archive

一、CUDA Repository

获取CUDA安装包,安装包请自行去NVidia官网下载。


二、CUDA Toolkit

三、Environment Variables


然后,就是进入samples里面,make进行编译,需要40分钟左右的等待时间。

编译完成./deviceQuery进行验证。


第二步安装 Python


1. 安装IDE运行环境

选择一个适合你的IDE运行环境,我是用的是Spyder,因为它内置了 iPython 环境,Caffe有不少的程序是基于 iPython 环境完成的。安装方法很简单,直接在Ubuntu软件中心搜索“spyder”即可安装。

2. iPython NoteBook 安装

另外一个比较推荐的方法是使用iPyhthon NoteBook(基于浏览器的Python IDE),特别是适合需要用Python做教程的老师们,可以直接导出.py, .ipynb, html格式,安装步骤如下:

启动(自动打开浏览器):

$ ipython nootbook

一个简单的使用iPython NoteBook生成的html的例子:examples_notebook.html  example_notebook.ipynb


第三步 安装 matlab

安装过程:

1、将crack里面的install.jar移动到2014b/R2014b_glnxa64/java/jar。替换jar里面的install.jar。

2、添加可执行权限chmod -R 777 /R2014b_glnxa64,

然后sudo sh install。注意,有时候这里会报错:   

R2014b_glnxa64/bin/glnxa64/install_unix: Permission denied

这是因为没有添加可执行权限,于是来到install_unix的路径下,添加权限,再返回,sudo sh install,接下来就是accept,安装秘钥:file installation key = 29797-39064-48306-32452

一路下来,激活的时候用crack里面的license.lic。

最后将libmwservices.so copy到  /usr/local/MATLAB/R2014b/bin/glnxa64。然后再终端输入:/usr/local/MATLAB/R2014b/bin/matlab就可以打开matlab了。

Python和matlab的编译在第四步中进行。


第四步 安装caffe


caffe官网安装教程:http://caffe.berkeleyvision.org/installation.html

一、安装BLAS

1、安装atlas

安装ATLAS

  sudo apt-get install libatlas-base-dev 


2、安装mkl

先注册并下载。下载链接是:https://software.intel.com/en-us/intel-education-offerings, 请下载Student版,先申请,然后会立马收到一个邮件(里面有安装序列号),打开照着下载就行了。

二、MKL与CUDA的环境设置

1. 新建intel_mkl.conf, 并编辑之:

/opt/intel/lib/intel64

/opt/intel/mkl/lib/intel64

2. 新建cuda.conf,并编辑之:

/usr/local/cuda/lib64

/lib

3. 完成lib文件的链接操作,执行:


二、安装OpenCV 3.0.0

以前安装caffe时候都是用别人编译好的脚本,直接安装,这样的好处是省力了,坏处时候,有时候会出错,感觉看人品,于是想着自己来下载源码重新编译安装,步骤如下:

参考链接:点击打开链接

1、先到官网下载源码,看自己的需求选择版本:点击打开链接

我的系统是Ubuntu 14.04 LTS 64位。

在安装之前,先执行下面的指令来更新系统(Linux下不建议升级系统!)

[plain] view plaincopy
  1. sudo apt-get update   
  2. sudo apt-get upgrade  

2、安装Dependencies

执行下面的指令即可:

[html] view plaincopy
  1. sudo apt-get -y install libopencv-dev build-essential cmake git libgtk2.0-dev pkg-config python-dev python-numpy libdc1394-22 libdc1394-22-dev libjpeg-dev libpng12-dev libtiff4-dev libjasper-dev libavcodec-dev libavformat-dev libswscale-dev libxine-dev libgstreamer0.10-dev libgstreamer-plugins-base0.10-dev libv4l-dev libtbb-dev libqt4-dev libfaac-dev libmp3lame-dev libopencore-amrnb-dev libopencore-amrwb-dev libtheora-dev libvorbis-dev libxvidcore-dev x264 v4l-utils unzip  


3、在官网下载源码,并解压

[html] view plaincopy
  1. mkdir opencv  
  2. cd opencv  
  3. wget https://github.com/Itseez/opencv/archive/3.0.0-rc1.zip -O opencv-3.0.0-rc1.zip  
  4. unzip opencv-3.0.0-rc1.zip  

4、安装OpenCV

[html] view plaincopy
  1. cd opencv-3.0.0-rc1  
  2. mkdir build  
  3. cd build  
  4. 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 ..  
  5. make -j $(nproc)  
  6. sudo make install  
/usr/local/share就是存放源码的位置。
在这一步可能会出现iippicv的错误,这时候需要先下载ippicv_linux_20140513.tgz,将解压的文件放入opencv-3.0.0路径下ippicv文件夹,同时在从cmake的时候添加,然后make
[html] view plaincopy
  1. -D WITH_IPP=OFF  


5、完成安装

[html] view plaincopy
  1. sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.c

三、安装其他依赖项

1. Google Logging Library(glog),下载地址:https://code.google.com/p/google-glog/,然后解压安装:

如果没有权限就chmod a+x glog-0.3.3 -R , 或者索性 chmod 777 glog-0.3.3 -R , 装完之后,这个文件夹就可以kill了。

2. 其他依赖项,确保都成功


四 、安装caffe并测试

1. 安装pycaffe必须的一些依赖项:

2. 安装配置nVidia cuDNN 加速Caffe模型运算

a. 安装cuDNN

该改版本caffe-master默认支持cudnn-6.5-linux-x64-v2,使用cudnn-6.5-linux-R1会报错,安装前请去先官网下载最新的cuDNN。

b. 链接cuDNN的库文件

3. 切换到Caffe-master的文件夹,生成Makefile.config配置文件,执行:

4. 配置Makefile.config文件(仅列出修改部分)

a. 启用CUDNN,去掉"#"(目前caffe-master仍然只支持R1版本)

USE_CUDNN := 1

b. 启用GPU,添加注释"#"

# CPU_ONLY := 1

c. 配置一些引用文件(增加部分主要是解决新版本下,HDF5的路径问题)

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

LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu/hdf5/serial

d. 启用Intel Parallel Studio XE 2015 Professional Edition for C++ Linux

BLAS := mkl

e. 配置路径,实现caffe对Python和Matlab接口的支持

PYTHON_LIB := /usr/local/lib

MATLAB_DIR := /usr/local/MATLAB/R2014b

5. 配置Makefile文件(实现对OpenCV 3.x的支持)

查找“Derive include and lib directories”一节,修改“LIBRARIES +=”的最后一行,增加opencv_imgcodecs

opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs

6. 编译caffe-master!!!"-j8"是使用CPU的多核进行编译,可以极大地加速编译的速度,建议使用。

编译Python和Matlab用到的caffe文件

然后就可以验证官网的mnist例子了,到此处,caffe就成功安装了。

此次安装出现的问题:在make runtest时候出现两个问题:

1、hdf5.h找不到路径,试了网上的方法没有解决,于是只得加上绝对路径,OK。

2、error while loading shared libraries: libcudart.so.7.0: cannot open shared object file: No such file or directory

     ->  32-bit: sudo ldconfig /usr/local/cuda/lib

64-bit: sudo ldconfig /usr/local/cuda/lib64

(refer: http://blog.csdn.net/shenchong721/article/details/21529295)

然后,运行OK。

参考链接:点击打开链接。


备注:caffe训练中,在linux中保存日志便于查看:

1、./examples/mnist/train_lenet.sh |& tee output.log(可重命名)

2、./examples/mnist/train_lenet.sh &>train.log这种方式在打印输出的同时,终端不显示过程。

还有就是ctrl+break手动保存当前工作状态。


还可以不装glog,直接保存成log文件

 sh xxxx.sh |& tee 路径/output.log



0 0
原创粉丝点击