Caffe配置简明教程 ( Ubuntu 14.04 / CUDA 7.5 / cuDNN 5.1 )
1. 前言
本教程使用的系统是Ubuntu 14.04 LTS 64-bit,使用的CUDA版本为7.5,使用的NVIDIA驱动版本为352。
如果您使用的Pascal架构显卡,如GTX1080或者新ttx,则必须使用更高版本的驱动和CUDA 8。本教程不适于这种情况,请不要尝试。
Ubuntu每两年发布一次LTS版本(即长期支持版),所以现在已经发布了16.04 LTS版本。鉴于很多程序在新系统下的兼容性还没有测试,本教程依然介绍的是上一个LTS版本上安装Caffe的方法,随后会推出针对于Ubuntu 16.04和CUDA 8的教程。
本教程很多细节已经尽量详细,但是还是要求使用者有一定的Linux基础,后续可能会推出针对于Linux新用户的更为详细的教程。
2. 安装基础依赖项
sudo apt-get install build-essential
sudo apt-get install cmake git
3. 安装NVIDIA驱动和CUDA7.5
从NVIDIA官网下载CUDA 7.5的deb本地安装包:下载地址
点击如上的链接可以下载支持x86架构CPU和Ubuntu 14.04系统的deb本地安装包,大小约1.9GB,如果需要其他安装方式可以按官网教程进行。
下载完成后,使用Ctrl+Alt+F1进入虚拟控制台,然后输入用户名和密码登陆。
然后关闭lightdm
sudo /etc/init.d/lightdm stop
前往指定的目录,然后执行:
sudo dpkg -i cuda-repo-ubuntu1404-7-5-local_7.5-18_amd64.deb
sudo apt-get update
sudo apt-get install cuda
CUDA安装包中含有NVIDIA显卡驱动程序,会自动安装。
安装完成之后重启:
sudo reboot
重启后后,需要添加环境变量。使用gedit打开如下文档:
sudo gedit /etc/profile
PS:只有在图形桌面环境下才能使用gedit,如果未启动图形界面请使用vim等基于命令行的编辑器。
在文件末尾添加:
PATH=/usr/local/cuda/bin:$PATH export PATH
保存完成后,执行如下命令使环境变量立即生效:
source /etc/profile
然后还需要添加lib的路径:
sudo gedit /etc/ld.so.conf.d/cuda.conf
在文件中写入如下内容然后保存:
/usr/local/cuda/lib64
之后执行如下命令使之生效:
sudo ldconfig
PS:上面的命令使L-D-C-O-N-F-I-G!!! 无数的人把L写成了I,然后告诉我报错。
执行完了这些操作之后,还可以安装CUDA SAMPLES来检测CUDA是否运行正常,鉴于这不是CUDA编程教程,本教程暂不介绍。
4. 安装其他的一些依赖项
sudo apt-get install freeglut3-dev libx11-dev libxmu-dev libxi-dev libglu1-mesa-dev
sudo apt-get install libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler
PS:复制粘贴太长的命令可以能因为浏览器的原因导致输入了多余的换行符,如果复制粘贴带有换行符的命令进Terminal,会被当做两条命令来执行,一定要注意这一点。
5. 安装ATLAS
本步骤可以用OpenBLAS或者Intel MKL替代。我在E5-2690v2+GTX780的平台上测试过这三种库,性能相差无几,这里就介绍其中一种:
sudo apt-get install libatlas-base-dev
然后自动安装完成即可。
目前intel MKL是收费软件,OpenBLAS可以免费下载和安装。如果使用这两种库,编译Caffe时要在Makefile.config做出对应的修改。
6. 安装OpenCV
如果不需要使用OpenCV 3的其他功能,使用步骤4中安装的libopencv-dev即可。如需单独安装OpenCV,请点击:这里。
7.下载Caffe
从GitHub上直接下载Caffe的最新版
git clone https://github.com/BVLC/caffe.git
也可以从Caffe的GitHub工程中下载Caffe的历史版本:
https://github.com/BVLC/caffe
8. 安装Python
先安装相关依赖项
sudo apt-get install python-dev python-pip
转到下载的caffe的目录下,然后转到python目录下
cd python
执行如下命令:
for req in $(cat requirements.txt); do sudo pip install $req; done
等待其自动安装即可。
9. 安装MATLAB
下载正版matlab镜像。
打开Terminal,创建文件夹用于挂载matlab的iso:
sudo mkdir /mnt/matlab_iso
然后挂载matlab的iso(将红色内容根据自己的文件路径和名称进行修改):
sudo mount -o loop /路径/Matlab镜像文件名.iso /mnt/matlab_iso
然后执行安装程序:
sudo /mnt/matlab_iso/install
会弹出图形化安装界面,按步骤安装即可,跟windows上安装matlab基本一样。
安装完成后,需激活matlab。先前往matlab的安装路径(根据版本不同前往自己的安装路径即可,下面的路径仅是示范):
cd /usr/local/MATLAB/R2016a/bin
然后在sudo权限下启动matlab(如果不在sudo下启动,matlab会因权限不够无法激活):
sudo ./matlab
然后按图形界面提示激活即可。
激活之后,可以为matlab创建快捷方式:
sudo gedit /usr/share/applications/Matlab.desktop
写入以下内容:
[Desktop Entry] Type=Application Name=Matlab GenericName=Matlab 2016a Comment=Matlab:The Language of Technical Computing Exec=sh /usr/local/MATLAB/R2016a/bin/matlab -desktop Icon=/路径/Matlab.png Terminal=false Categories=Development;Matlab;
根据自己的情况更改图标路径和matlab路径。
10. 配置cuDNN
cuDNN需要注册Accelerated Computing Developer Program,然后可以免费下载。
cuDNN是The NVIDIA CUDA Deep Neural Network library,对于使用NVIDIA显卡进行深度学习加速具有很大的性能提升,非常建议添加。
在如下地址进行注册和下载,支持下载历史版本:
点击这里
PS:另外,cuDNN在很多工程中兼容性较差,可能需要安装特定的历史版本。
下载后解压缩,转到该目录下,执行:
sudo cp lib* /usr/local/cuda/lib64/
sudo cp cudnn.h /usr/local/cuda/include/
更新软链接
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.5
sudo ln -s libcudnn.so.5.1.3 libcudnn.so.5
sudo ln -s libcudnn.so.5 libcudnn.so
PS:根据你下载的cuDNN版本不同,需要对如上命令中的版本进行修改,以上展示的命令是对于cuDNN 5.1.3的。
11. 编译Caffe
在caffe目录下,执行:
cp Makefile.config.example Makefile.config
然后打开Makefile.config,根据自己的需要修改相关参数。
如果使用了cuDNN,则如下行取消注释:
# USE_CUDNN := 1
其他可以根据需求修改,比如安装了MATLAB后写入正确的MATLAB安装路径等。
然后进行编译:
make all -j10
make test
make runtest
PS:-j10指10线程同时编译,根据自己CPU的特点调整该参数,如果不了解自己CPU,直接执行make即可。
然后可以根据需求编译matcaffe和pycaffe:
make matcaffe
make pycaffe
然后caffe就安装结束了。
12. 运行minist demo
转到 Caffe 目录下
sh data/mnist/get_mnist.sh
sh examples/mnist/create_mnist.sh
sh examples/mnist/train_lenet.sh
如果运行正常,caffe就可以正常工作了。
本教程编写参考了如下教程,特此鸣谢:
http://www.cnblogs.com/platero/p/3993877.html
http://www.linuxidc.com/Linux/2011-01/31632.htm
http://blog.csdn.net/xanxus46/article/details/7945993
Caffe的官方网站是 http://caffe.berkeleyvision.org/
如果有任何问题可以联系我:yaoyaoliu AT outlook.com
最近更新于2016-09-23 16:59:31
转载于:https://www.cnblogs.com/yaoyaoliu/p/5850993.html
Caffe配置简明教程 ( Ubuntu 14.04 / CUDA 7.5 / cuDNN 5.1 )相关推荐
- NVIDIA DIGITS-2.0 + Ubuntu 14.04 + CUDA 7.0 + cuDNN 7.0 + Caffe 0.13.0环境配置
引言 DIGITS简介 DIGITS特性 资源信息 说明 DIGITS安装 软硬件环境 硬件环境 软件环境 操作系统安装 DIGITS安装前准备 安装CUDA70deb方式 安装cuDNN70 安装C ...
- Ubuntu 14.04+cuda 7.5+caffe安装配置
换了新电脑,整个人喜气洋洋,然后就屁颠屁颠地开始配置caffe的使用环境. 可是!!!配置这个坑爹的caffe环境让我重装系统N次加上重装cudaN次,后来发现有好多都是很琐碎的注意事项,好多人都没有 ...
- 2015.08.17 Ubuntu 14.04+cuda 7.5+caffe安装配置
2016.06.10 update cuda 7.5 and cudnn v5 2015.10.23更新:修改了一些地方,身边很多人按这个流程安装,完全可以安装 折腾了两个星期的caffe,windo ...
- Ubuntu 14.04+GT720M+CUDA8.0+CUDNN+PYCAFFE
安装系统:Ubuntu14.04 安装前执行: sudo apt-get update sudo apt-get install g++ CUDA8.0包括2部分内容:Driver+Tool Kit, ...
- switch安装linux教程,ubuntu 14.04 freeswitch安装及应用
FreeSWITCH 是一个电话的软交换解决方案,包括一个软电话和软交换机用以提供语音和聊天的产品驱动.FreeSWITCH 可以用作交换机引擎.PBX.多媒体网关以及多媒体服务器等,下文我们一起来看 ...
- linux drupal 7安装教程,Ubuntu 14.04 LTS 下安装Drupal 7
2.下载Drupal7的安装包: wget http://ftp.drupal.org/files/projects/drupal-7.XX.tar.gz 其中XX为最新的版本号 3.将安装包中文件解 ...
- Ubuntu 14.04 64 bit+ Torch 7 + CUDA7安装配置
本文记录了本人配置Ubuntu 14.04 LTS + Torch7 + CUDA环境的过程,以及遇到的一些问题,简要介绍了Torch的使用. Torch简介 什么是Torch 为什么选择Torch ...
- Ubuntu 14.04下编译WebRTC
阿里云 > 教程中心 > python教程 > Ubuntu 14.04下编译WebRTC Ubuntu 14.04下编译WebRTC 发布时间:2018-02-28 ...
- Installing OpenCV 2.4.9 in Ubuntu 14.04 LTS(好文章)
原文链接 http://www.samontab.com/web/2014/06/installing-opencv-2-4-9-in-ubuntu-14-04-lts/ Installing Ope ...
最新文章
- 乘法器专题研究(内含所有类型乘法器)
- 海康威视:国际化+互联网 公司迎来“第二春”
- 净核心vs节点js您应该选择什么
- 【小白学习PyTorch教程】十九、 基于torch实现UNet 图像分割模型
- Android 工程的创建
- skywalking(2)
- mysql r_R之RMySQL
- Struts2学习笔记(六) 结果(Result)(上)
- c语言0可以除10吗,C语言10.0
- mybatis官方文档知识点梳理
- (八)Java日期工具类DateUtils详解(一)
- 产品经理-思维导图梳理功能
- av_malloc 与 av_free 的函数原型
- 手机访问电脑虚拟服务器,User Agent Switcher插件使用教程【电脑模拟手机访问网站】...
- 台式计算机用手机流量上网,台式机如何使用手机流量上网
- 牛客 Algorithm Choosing Mushrooms
- java让星星闪烁,js实现星星闪特效
- 110配线架打法图解_【布线经验】110语音配线架详细安装教程(图文)
- 大数据获取方法及常用工具学习
- android 播放手机音乐播放器,推荐六款安卓手机音乐视频播放器软件