Ubuntu 14.04 LTS, 64bit, cuda 7, Caffe环境配置编译和安装
1 GPU设备
1.1 本人使用的GPU设备
名称: 七彩虹GTX980Ti显卡iGame980Ti烈焰战神X 6G
1.2 硬件问题
Laboratory Tested Hardware:
Berkeley Vision runs Caffe with K40s, K20s, and Titans including models at ImageNet/ILSVRC scale. We also run on GTX series cards and GPU-equipped MacBook Pros. We have not encountered any trouble in-house with devices with CUDA capability >= 3.0. All reported hardware issues thus-far have been due to GPU configuration, overheating, and the like.
CUDA compute capability:
如果设备的运算能力 <= 2.0, 受限于设备的性能, 可能需要减少 CUDA的线程数量 和 批处理的 大小(sizes). 你的吞吐量可能会发生变化.
安装后, 参照我们的 reference performance numbers 确保所有的配置是正确的.
工程问题请参照 hardware/compatibility.
2 GPU驱动和GPU开发工具安装
基于cuda_7.0.28_linux.run安装
下载地址: cuda_7.0.28_linux.run
其他各版本(含老版本和最新版本)的文档地址:http://blog.csdn.net/real_myth/article/details/52724892
3 Caffe
基于原版翻译的教程参见: Caffe编译安装
3.1 编译工具(如果开发环境已经具备不需要此步骤)
1) gcc, g++ (安装命令: sudo apt-get install build-essential )
2) make(安装命令:sudo apt-get install make )
3) cmake(安装命令:sudo apt-get install cmake)
注意,在 Ubuntu 12.04中, 默认安装的CMake版本为2.8.7, 不能满足编译Caffe的CMake 版本需求 (版本至少为 2.8.8) ,如果你使用的系统是Ubuntu 12.04,可以尝试下面的安装步骤安装CMake 2.8.9或者升级到这个版本 :
sudo add-apt-repository ppa:ubuntu-sdk-team/ppa -y
sudo apt-get -y update
sudo apt-get install cmake
3.2 先决依赖条件(Prerequisites)
Caffe 依赖于很多的软件包。
- CUDA
Caffe 需要 CUDA nvcc
编译器来编译GPU 代码 ,需要CUDA驱动来操作GPU. 要安装 CUDA, 请参照NVIDIA CUDA 网站和网站上的安装说明.分别安装依赖库和最新的驱动;
和依赖库绑定的驱动通常版本比较老.警告! 331.* CUDA 系列驱动有严重的性能问题: 不要使用.
为了达到最好的性能, Caffe 可以通过NVIDIA cuDNN加速. cuDNN 网站注册是免费的, 安装完后继续下面的安装说明.
要使用cuDNN编译请在你的Makefile.config
种设置USE_CUDNN := 1
.(个人用的是cuDNN V4)
cudnn下载地址: 下载(http://blog.csdn.net/real_myth/article/details/52739801)
本文安装方式:
由于cuda_7.0.28_linux.run安装需要编译内核,所以对于安装了桌面环境的ubuntu 需要结束桌面环境,在终端环境下操作。
桌面环境转到终端环境:
1)按ALT+CTRL+F1、F2、F3、F4、F5、F6、F7可来回切换7个界面(Linux实体机)其中ALT+CTRL+F7可切换到图形界面(Linux实体机)如果是VMware虚拟机安装的Linux系统,则切换到图形界面的时候需要以下操作按下ALT+CTRL+SPACE(空格),ALT+CTRL不松开,再按F7。这样就可以切换到图形界面了。
2) 如果想Ubuntu在每次启动到commandprompt(默认字符界面),可以输入以下指令:echo“false”|sudotee/etc/X11/default-display-manager(注意:上述命令的作用是将default-display-manager文件中的内容改为"false",在执行该命令之前最好先备份一下)当下次开机时,就会以命令行模式启动(字符界面登录)。如果想变回图形界面启动(Xwindows启动),可以输入:echo“/usr/sbin/gdm”|sudotee/etc/X11/default-display-manager(注意:其中“/usr/sbin/gdm”是原先default-display-manager文件中的内容,并不是所有linux版本都是“/usr/sbin/gdm”,ubuntu12.04的是"/usr/sbin/lightdm"因此,在修改default-display-manager文件的内容之前,最好先备份一下,以免忘记里面的内容。)
3)如果在Ubuntu以命令行模式启动,在字符终端想回到图形界面的话只需以下命令:startx
停止和启动桌面环境:
service lightdm stop & service lightdm start
安装:
转到cuda_7.0.28_linux.run所在的目录,以root权限运行此文件,并按照提示选择相应的安装工具和目录即可。
我都是默认路径全部安装的
- BLAS (通过 ATLAS, MKL,或 OpenBLAS提供)
Caffe 需要 BLAS作为矩阵和向量计算的后端( backend).有很多这个库的移植版本.可以自己根据情况选择:
ATLAS:
免费,开源代码,Caffe的默认依赖
sudo apt-get install libatlas-base-dev
Intel MKL:
商业版并且针对Intel的CPU做了优化, 可以免费试用,并且有学生版本.
安装 MKL.
在Makefile.config文件中设置 BLAS := mkl
OpenBLAS:
免费的并且开源; 优化的可并行的 BLAS, 虽然安装需要花点时间,但是确实可以提速 .
安装 OpenBLAS
在Makefile.config文件中设置 BLAS := open
- OpenCV.
sudo apt-get install libopencv-calib3d-dev libopencv-contrib-dev libopencv-core-dev libopencv-dev libopencv-features2d-dev libopencv-flann-dev libopencv-gpu-dev libopencv-highgui-dev libopencv-imgproc-dev libopencv-legacy-dev libopencv-ml-dev libopencv-objdetect-dev libopencv-ocl-dev libopencv-photo-dev libopencv-stitching-dev libopencv-superres-dev libopencv-ts-dev libopencv-video-dev libopencv-videostab-dev
或者
sudo apt-get install libopencv-dev
- Boost (>= 1.55, 只有1.55和1.56测试过)
sudo apt-get install libboost-all-dev
,protobuf
,leveldb
,snappy
,hdf5
, gloggflags
,lmdb
sudo apt-get install libprotobuf-dev protobuf-compiler libleveldb-dev libsnappy-dev libhdf5-serial-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
Ubuntu系统, 万一在你的系统源里找不到上面说的这些扩展库, 下面的命令教你如何手工编译安装 (安装的时候可能需要root权限)
# glog
wget https://google-glog.googlecode.com/files/glog-0.3.3.tar.gz
tar zxvf glog-0.3.3.tar.gz
cd glog-0.3.3
./configure
make && make install# gflags
wget https://github.com/schuhschuh/gflags/archive/master.zip
unzip master.zip
cd gflags-master
mkdir build && cd build
export CXXFLAGS="-fPIC" && cmake .. && make VERBOSE=1
make && make install# lmdb
git clone git://gitorious.org/mdb/mdb.git
cd mdb/libraries/liblmdb
make && make install
Note that glog does not compile with the most recent gflags version (2.1), so before that is resolved you will need to build with glog first.
- Python
python 2.7
, numpy (>= 1.7)
, boost-providedboost.python
主要的依赖为 numpy
和boost.Python
(通过 boost提供).pandas
也是有用的并且是一些例子的依赖。
可以通过以下命令安装依赖:
for req in $(cat requirements.txt); do sudo pip install $req; done
强烈推荐首先安装提供了大部分需要的的依赖包和hdf5依赖库的 Anaconda Python distribution。
ubuntu: sudo apt-get install python python-dev
安装完成后,如果要导入 caffe的
Python模块,需要通过 export PYTHONPATH=/path/to/caffe/python:$PYTHONPATH
或者类似的方法添加模块路径到你的环境变量$PYTHONPATH
.不可以在caffe/python/caffe路径中导入
!
Caffe’的 Python 接口支持 Python 2.7. Python 3 或者更早的 Pythons.
- MATLAB(可选),有mex编译器的MATLAB
安装MATLAB, 确保Matalab的 mex在你的环境变量
$PATH中
.
Caffe的 MATLAB接口兼容于版本 2012b, 2013a/b, 和 2014a.
3.3 运行模式设置
cuDNN Caffe: Caffe通过drop-in integration of NVIDIA cuDNN的加速方式来达到最快的执行速度。
要加速你的Caffe模型, 请安装 cuDNN 然后在Makefile.config
文件中解注释USE_CUDNN := 1,这样安装
Caffe后,就会自动加速.
CPU-only Caffe: 对于cold-brewed 只有CPU模式的Caffe,请在文件Makefile.config中,解注释CPU_ONLY := 1,然后以无CUDA的方式编译
Caffe.这有助于云和集群方式的部署。
3.4 编译 & 安装
3.4.1 直接使用已有的Makefile
现在已经具备了所有的依赖条件, 编辑你的配置文件 Makefile.config,改变你的安装路径
(you should especially uncomment and setBLAS_LIB
accordingly on distributions likeCentOS / RHEL / Fedora where ATLAS is installed under/usr/lib[64]/atlas
),默认的配置是可以的,但是如果你使用的是Anaconda Python,请解注释相关的行。
cp Makefile.config.example Makefile.config
# Adjust Makefile.config (for example, if using Anaconda Python)
make all
make test
make runtest
编译的时候如果要引入cuDNN加速,你需要在文件Makefile.config中解注释USE_CUDNN := 1。
如果你的电脑上没有 GPU,你应该使用CPU-only模式的Caffe,请在文件Makefile.config中解注释CPU_ONLY := 1
。
要编译 Python 和 MATLAB 包,请独立的执行make pycaffe和
make matcaffe
. 请务必首先在Makefile.config中配置你的MATLAB 和 Python路径!
Distribution: 运行 make distribute来创建一个包含所有的Caffe 头文件, 编译好的依赖库,二进制文件等的分布式路径,用于其他机器的配置
.
Speed: 如果要快速的编译,请通过make all -j8的方式并行编译,其中
8是并行编译的线程的数量(并行线程的数量最好等于你机器CPU核的数量).
到目前为止,你已经安装了Caffe, 请参照 MNIST tutorial 和 reference ImageNet model tutorial进行进一步的操作.
3.4.2 使用CMake (beta)编译
通过手工编辑Makefile.config的方式告诉
Caffe 寻找依赖的的位置, Caffe 也提供了一个基于 CMake的编译系统 (currently in “beta”).要求CMake 版本 >= 2.8.8. 基本的安装步骤如下:
mkdir build
cd build
cmake ..
make all
make runtest
Ubuntu 14.04 LTS, 64bit, cuda 7, Caffe环境配置编译和安装相关推荐
- Ubuntu 16.04 LTS, 64bit,cuda 8, Caffe环境配置编译和安装
1 GPU设备 1.1 本人使用的GPU设备 名称: 七彩虹GTX980Ti显卡iGame980Ti烈焰战神X 6G 1.2 硬件问题 Laboratory Tested Hardware: Berk ...
- 红帽 linux 安装gns3,Ubuntu 14.04 LTS 64-bit安装GNS3 1.3.7
在Ubuntu 14.04 LTS 64-bit安装GNS3 1.3.7过程,全英文. Updated for GNS3 version 1.3.7 Please NOTE: This documen ...
- ubuntu 14.04 LTS(64bit) Anacoda2环境下安装gensim
直接使用安装: pip install gensim
- ubuntu 14.04 LTS(64bit) Anaconda2 + Theano(1.0.2) + Keras安装
Anaconda安装前面已经写过 主要介绍theano与keras的安装 theano安装: 使用conda安装,命令行下直接执行:conda install theano 安装过程与验证:Pytho ...
- 在 Ubuntu 14.04 LTS 中配置 certbot 自动更新
目录 前言 一.安装 snapd 二.确保安装的 snapd 版本为最新版本 三.删除 certbot-auto 及系统中已安装的任何 certbot 软件包 四.安装 Certbot 五.建立系统的 ...
- 64位双系统Ubuntu 14.04 LTS + Caffe + CUDA 7.5 + Opencv 3.0 安装配置实战
一切的一切,开端便是这caffe,作为博客的第一篇文章,自然要讲讲一个哲学问题"我是从哪来的" 一.windows情况下安装双系统64位Ubuntu 本段落根据http://www ...
- 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 ...
- Ubuntu 14.04 LTS 的安装和配置以及各种问题的解决
折腾了几天的时间终于把Ubuntu 14.04 LTS 环境配置好了,为防止遗忘,特作此记录,也方便遇到同样问题的童鞋们查看 步骤一,系统安装 可以拷贝一个系统盘,我用的是 ubuntu-14.04- ...
- 在Ubuntu 14.04.5 64bit上安装git GUI客户端GitKraken
git的图像化管理工具很多,有两个是比较推荐用的,sourceTree以及GitKraken.个人比较喜欢GitKraken.下面是我在Ubuntu 14.04.5 64bit上的安装过程. 从官网下 ...
最新文章
- c语言 得到结构体成员偏移
- enum2str做为queryValue时的问题
- 机器学习实战:支持向量机
- Java如何使用Listener
- 月流水超千万,在线抓娃娃爆红背后的产品逻辑你看懂了吗?
- vue-springboot项目 mybatis条件查询结果为null时解决方案 @Param @RequestParam 的参数传递
- 2021阿里云开发者大会|【云原生数据库:一站式数据服务】分论坛即将开启
- DP:***24种设计模式--转自刘伟
- Windows下安装并使用MySQL数据库
- Android 循环滚动控件ViewFlipper,可实现跑马灯或轮播图效果
- RTSP播放器或RTMP播放器常用的事件回调设计
- Java程序员的日常—— 垃圾回收中引用类型的作用
- poj 3660 Cow Contest floyd 传递闭包!!基础
- 刀剑乱舞网页版选不了服务器,《刀剑乱舞》不魔法进入游戏方法
- VS 2015社区版离线下载
- Android解决“此用户无法使用开发者选项“异常
- python requests 代理ip被禁_python requests 测试代理ip是否生效
- android锁屏事件监听,Android 监听锁屏、解锁、开屏 操作
- 【项目管理】投资回报率 ROI(Return on Investment)
- ## KEIL 5在MDK注册过程中LIC无法添加的问题解决: