Caffe+Ubuntu14.04+CUDA7.5 环境搭建(新人向)指南
序
本文针对想学习使用caffe框架的纯新手,如果文中有错误欢迎大家指出。
由于我在搭建这个环境的时候参考了许多网上的教程,但是没有截图,所以文中图片大多来源于网络。
本文没有安装matlab的步骤,因此需要安装并配置matlab的同学请百度matlab安装。
1. 在Win10环境下搭建Ubuntu14.04双系统
操作事先请准备好:
一个空的U盘,最好大于4G。
去Ubuntu官网下载一个Ubuntu14.04的iso镜像文件,注意要64位系统。
下载一些用的到的小工具,如EsayBCD,utraliso
以上的东西都准备齐全就OK了。下面上具体的安装步骤。
第一步,在我的电脑管理工具里使用磁盘管理工具为Ubuntu系统分配一些硬盘空间,个人建议最少准备100G,因为搭建环境里可能需要安装各种臃肿的软件,到时候提示硬盘空间不足就真的尴尬了。分配空间的办法就是选择一个盘符点击压缩卷,然后输入一个需要的大小就ok了。
第二步,使用utraliso和Ubuntu镜像文件在u盘上制作一个安装盘。使用utraliso打开镜像文件然后菜单里找到启动 -> 写入硬盘映像,然后硬盘驱动器选择插入的U盘,写入方式USB-HDD+,直接写入即可。
第三步,重启计算机,使用U盘启动。不同型号的电脑可能进入BIOS或者启动选项的方式不同,不过无外乎也就是狂按del大法,根据开机瞬间提示点击F1-F12大法等等。使用U盘启动就会看到install ubuntu的选项了,选择后进入就是ubuntu的安装界面。(不知道如何从U盘启动的同学请百度一下,教程超多,还都配有照片,很贴心)
第四步,对ubuntu进行分区。首先安装请选择‘其他选项’并继续,然后在一大堆硬盘记录里找到我们准备好的那个空闲的空间,为ubuntu分区。选择空闲空间后,点击左下角的加号即可添加分区。我推荐的分区添加顺序是:
1.添加swap交换空间,大小是机器本身内存大小即可,如果硬盘空间充足的同学可以分配到1.5-2倍内存大小。
2.添加'/boot'分区,大小在200MB到500MB即可,如果硬盘富裕,可以考虑1G,在多了也没什么用。(如图所示,其他目录直接点击/boot的下拉菜单即可)
3.添加‘/’根目录挂载点,大约40G左右。根目录可以尽量大一些,因为后面要安装的各种软件都要安装到这里。
4.添加‘/home'用户主目录挂载点,把剩下的空间都分配过来就行了。
其实最推荐的分区顺序是/boot放在最前作为主分区,其他作为逻辑分区,swap放在最后,不过既然是双系统,也没有必要那么讲究了。(PS 分区左下角减号可以删除设定的分区,处女座同学请自行左下角)
第五步,吃个水果听个歌等着安装完重启电脑就行了。重启以后默认会以ubuntu的grub进行引导,windows系统将不是默认的启动项,如果想改会windows的UEFI引导,可以使用准备好的EasyBCD处理一下,具体方案直接百度谷歌即可。
至此,Ubuntu安装完毕。
PS,网上有很多不需要u盘直接easyBCD引导安装双系统的,感兴趣的同学可以尝试,但是如果你的电脑装有双硬盘特别是使用出厂原装系统的笔记本,这个需要一点点相关的技术经验了,因为要改启动的默认盘符地址,因此我是不推荐的,借小伙伴个U盘,省去了千千万万的烦恼。
PPS,linux下使用终端十分频繁,可以安装下面的一个小插件,让文件浏览器里的右键菜单中增加‘在终端中打开’省去了cd目录的麻烦,十分推荐!
输入命令安装nautilus-open-terminal
sudo apt-get install nautilus-open-terminal
安装完成后重启电脑,就可以在右键菜单里直接打开终端了!
2. 安装CUDA7.5
直接去NVIDIA的官网下载CUDA7.5针对Ubuntu的安装包即可,网址https://developer.nvidia.com/cuda-downloads,如图选择即可。
下载完这个1.9GB的安装包后,切记不要手贱去双击使用什么软件中心打开并手贱安装,这样并没有什么卵用。老老实实打开终端,使用cd命令切换到安装包所在的文件夹里,输入下面的命令:
sudo dpkg --install cuda-repo-<distro>-<version>.<architecture>.deb
sudo apt-get update
sudo apt-get install cuda
等待安装完以后,请老老实实的重启电脑,加载显卡驱动。如果你能顺利的重启,请在ubuntu的系统设置->详细信息->概况里查看是否已经成功读取出了你的NVIDIA显卡。
能顺利完成以上动作的同学请跳过下面一段。。。
如果脸黑了 重启失败了,那么就在开机选择操作系统中选择ubuntu高级然后进入后可以看到不同的ubuntu启动和其recovery模式,尝试一边那些非recovery的选择看看哪个能进去,进去了就可以执行下面的步骤了,进不去的同学,请喝口水,百个度查查解决方案或者重装吧。
如果进去了系统,然后在ubuntu的系统设置->详细信息->概况里发现并不是nvidia的显卡而还是intel的集成显卡,那么请在此执行sudo apt-get update然后重启电脑。
讲道理的话,到这就应该顺顺利利安装完CUDA了。
然后可以运行运行simple测试一下:在终端下操作
先配置环境变量
export PATH=/usr/local/cuda-7.5/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-7.5/lib64:$LD_LIBRARY_PATH
安装simples
cuda-install-samples-7.5.sh ~
进入到simple目录,编译并执行nbody样例程序
cd ~/NVIDIA_CUDA-Samples_7.5/5_Simulations/nbody
make
./nbody
成功的话应该会弹出一个图形窗口,然后是一个粒子爆炸的模拟,只要能运行这个了就说明CUDA安装成功了。
然后链接lib文件,新建cuda.conf:
$ sudo gedit /etc/ld.so.conf.d/cuda.conf
并在打开的文件中写入:
/usr/local/cuda/lib64
/lib
保存退出,更新设置:
$ sudo ldconfig -v
CUDA的simples里有很多有趣又实用的程序,感兴趣的同学可以自己编译运行并读读源码学习。
可选:安装CUDNN开发库
去官网注册并下载CUDNN (cudnn-7.5-linux-x64-v4.0-prod)这里推荐v4,老版本稳定,v5可能会遇到编译不过的问题。然后进行安装
$ sudo cp include/cudnn.h /usr/local/include
$ sudo cp lib64/libcudnn.* /usr/local/lib
链接库文件
$ sudo ln -sf /usr/local/lib/libcudnn.so.4.0.7 /usr/local/lib/libcudnn.so.4
$ sudo ln -sf /usr/local/lib/libcudnn.so.4 /usr/local/lib/libcudnn.so
$ sudo ldconfig -v
3. 搭建Caffe环境
Caffe需要依赖许多的工具,例如BLAS,CUDNN之类的,我们要一步一步的安装,这里切记要有耐心。
Caffe下载:推荐放在主目录下,方便用
git clone https://github.com/BVLC/caffe.git
第一步 安装一些开发必备包
一般都是已经安装完了 我们这里只是再检验一下。
sudo apt-get install build-essential
sudo apt-get install vim cmake git
sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf
第二步 安装BLAS
这里可选择Intel 的MKL,OpenBLAS和ATLAS,运行效率上ATLAS < OpenBLAS < MKL,配置难易程度上ATLAS < MKL < OpenBLAS。
安装ATLAS: 输入命令
sudo apt-get install libatlas-base-dev
完成!
安装MKL,下载地址https://software.intel.com/en-us/intel-education-offerings,选择英特尔® 数学内核库 Linux* 版MKL(Intel(R) Parallel Studio XE Cluster Edition for Linux 2016),这个其实是要收费的,但是使用一个学生邮箱可以免费申请到1年,下载后直接使用如下命令解压并安装,安装是图形化界面,直接装就行了。需要8.2GB空间,如果前面小伙伴只给了根目录20GB不到的大小,那么可以跳过这一步了,硬盘很可能就不够了。
tar zxvf parallel_studio_xe_2016.tar.gz
chmod a+x parallel_studio_xe_2016 -R
sudo sh install_GUI.sh
安装完成后链接lib文件,如CUDA一样
新建intel_mkl.conf:
$ sudo gedit /etc/ld.so.conf.d/intel_mkl.conf
输入:
/opt/intel/lib/intel64
/opt/intel/mkl/lib/intel64
保存退出,更新设置:
$ sudo ldconfig -v
第三步,安装OpenCV
这里推荐3.0版本,不用去官网找,这里分享一个转载的文件,直接运行安装即可:
链接: http://pan.baidu.com/s/1kVpOUHL 密码: vfvb
下载后进入安装目录,安装依赖项:sudo sh Ubuntu/dependencies.sh
然后进入Ubuntu\3.0执行安装:$ sudo sh opencv3_0_0.sh
安装需要联网,大概需要30分钟左右,喝个茶休息休息。。。。
第四步,安装其他依赖的库
1. Google Logging Library(glog),下载地址:https://code.google.com/p/google-glog/,然后安装,命令如下:
tar zxvf glog-0.3.3.tar.gz
./configure
make
sudo make install
2. 安装其他依赖库
sudo apt-get install -y libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libboost-all-dev libhdf5-serial-dev libgflags-dev libgoogle-glog-dev liblmdb-dev protobuf-compiler protobuf-c-compiler protobuf-compiler
3. 安装一些python的依赖
我个人不推荐使用anaconda,因为编译时还要额外设置目录,很麻烦。。。
直接装一个pip:
sudo apt-get install python-pip
然后以后缺什么直接根据缺少的包名 pip install <package-name>即可。
切换到caffe目录下的python目录,
sudo apt-get install -y python-numpy python-scipy python-matplotlib python-sklearn python-skimage python-h5py python-protobuf python-leveldb python-networkx python-nose python-pandas python-gflags Cython ipython
然后使用sudo su命令进入root,再检查一边requirement.txt里的包是不是都安装全了
sudo su
for req in $(cat requirements.txt); do pip install $req; done
如果抱错了,一般就是缺少依赖包,二话不说,直接pip install <package-name>
至此,编译Caffe需要的东西就安装全了,如果想用matlab的同学,可以‘购(po)买(jie)’一个matlab自行安装,推荐matlab2014a(网上破解资源多,安装教程也多)
4. 编译并测试
编译Caffe的关键就是caffe的配置文件了,在caffe目录下有一个Makefile.config.example文件,这是对于配置文件的样例兼说明文件,英语还可以的同学建议仔细阅读其中的说明,真的很有用!!
如果读不下去了,那就直接照着改吧。。。
首先,复制一份Makefile.config.example并命名Makefile.config
cp Makefile.config.example Makefile.config
然后按照如下修改:
1.启用cudnn,去掉注释符号 #
USE_CUDNN := 1
2.启用OpenCV 3.0, 去掉注释符号 #
OPENCV_VERSION =3
3. 如果你使用了intel MKL,那么启用mkl(默认是ATLAS)
BLAS := mkl
OK,现在可以尝试编译Caffe了(烧个香拜个佛吧,希望没有错误)
可以在语句后面加入 -j数字 一样的命令多核编译,例如 make all -j4 四核编译,可以加速不少
make all
make test
make runtest
make pycaffe (编译python支持)
如果安装了matlab,那么需要编译caffe对matlab的支持部分:
在配置文件里设置 MATLAB_DIR := /usr/local/MATLAB/R2014a
make matcaffe
如果上述编译都已经正常通过了,那么可以进行测试了。
测试1 python引用
在caffe\python目录下进入python(终端切换到这个目录,输入python)
输入import caffe
如果不报错,恭喜你,编译通过了!
测试2 运行caffe自带的example,MNIST数据集测试
在caffe根目录下执行:
获取数据集
sh data/mnist/get_mnist.sh
建立输入
sh examples/mnist/create_mnist.sh
训练
sh examples/mnist/train_lenet.sh
如果不报错的话,就会不断的输出迭代次数,loss,err之类的信息。
至此 0基础搭建ubuntu caffe框架结束。
Caffe+Ubuntu14.04+CUDA7.5 环境搭建(新人向)指南的更多相关文章
- ubuntu14.04 qt4开发环境搭建(vnc use gnome)
1,安装qt开发环境软件包:apt-get install qt4-dev-tools qt4-doc qt4-qtconfig qt4-demos qt4-designer qtcreator; 2 ...
- 【一】Ubuntu14.04+Jekyll+Github Pages搭建静态博客
本系列有五篇:分别是 [一]Ubuntu14.04+Jekyll+Github Pages搭建静态博客:主要是安装方面 [二]jekyll 的使用 :主要是jekyll的配置 [三]Markdown+ ...
- ubuntu14.04建立交叉编译环境, 注意事项
ubuntu14.04建立交叉编译环境, 注意事项 ~$ arm-linux-gcc/opt/FriendlyARM/toolschain/4.4.3/bin/arm-linux-gcc: 15: e ...
- Ubuntu14.04下Ambari安装搭建部署大数据集群(图文分五大步详解)(博主强烈推荐)
不多说,直接上干货! 写在前面的话 (1) 最近一段时间,因担任我团队实验室的大数据环境集群真实物理机器工作,至此,本人秉持负责.认真和细心的态度,先分别在虚拟机上模拟搭建ambari(基于CentO ...
- Ubuntu14.04+caffe+cuda7.5 环境搭建以及MNIST数据集的训练与测试
Ubuntu14.04+caffe+cuda 环境搭建以及MNIST数据集的训练与测试 一.ubuntu14.04的安装: ubuntu的安装是一件十分简单的事情,这里给出一个参考教程: http:/ ...
- Caffe搭建:Ubuntu14.04 + CUDA7.0 + opencv3.0 + Matlab2014A
从Hinton在science上发表深度学习训练开创新的文章以来,深度学习火了整整有3年多,而且随着新的硬件和算法的提出,深度学习正在应用于越来越多的领域,发挥其算法的优势. 实验室并没有赶上第一波深 ...
- Caffe 安装 Ubuntu14.04+CUDA7.0/7.5(亲测有效)
自己安装Caffe的过程中,参考了很多资料,但由于版本或者其他原因,安装过程中总是遇到这样或者那样的问题,因此留做记录,方便之后查看,也希望对遇到相似麻烦的朋友们提供帮助. 下面我们开始安装吧: 硬 ...
- 搭建ubuntu14.04服务器必备环境
1. 设置网络 设置网络时,一定要设置好网卡,第一个网卡一定要设置为‘br0’(如下图),设置为其他的上不去网. 修改网络配置文件,命令:sudo gedit /etc/network/interf ...
- [转]caffe+Ubuntu14.0.4 64bit 环境配置说明(无CUDA,caffe在CPU下运行) --for --Amd
caffe是一个简洁高效的深度学习框架,具体介绍可以看这里,caffe环境配置过程可以参考这里,我在搭建环境时搜集了许多资料,这里整理了一下,介绍一下caffe在无CUDA的环境下如何配置. 1. 安 ...
随机推荐
- ngDialog 设置其宽度大小
[ngdialog弹窗大小设置(angularjs)] 方法一:添加css样式属性 css: .ngdialog.ngdialog-theme-plain.custom-width-70 .ngdia ...
- ViewPager和View的事件响应规则
案例背景: 当我们实现viewpager的自动切换界面操作的时候,如果需要增加点击图片viewpager停止自动切换,松开手指viewpager自动切换又继续执行的逻辑,正常思维下实现代码如下所示: ...
- 跑github上的Symfony项目遇到的问题2
最近学习symfony框架,下载了大量的github上的别人的项目,要想跑起别人的项目,总结了以下几个步骤: 第一, 克隆一份代码; 第二,安装依赖,前提是安装了composer, 1:在你下载的项目 ...
- 转:【iOS开发每日小笔记(十一)】iOS8更新留下的“坑” NSAttributedString设置下划线 NSUnderlineStyleAttributeName 属性必须为NSNumber
http://www.bubuko.com/infodetail-382485.html 标签:des class style 代码 html 使用 问题 文件 数据 ...
- Python学习笔记——基础篇【第六周】——json & pickle & shelve & xml处理模块
json & pickle 模块(序列化) json和pickle都是序列化内存数据到文件 json和pickle的区别是: json是所有语言通用的,但是只能序列化最基本的数据类型(字符串. ...
- iOS 调用私有函数安装app 卸载 app
1.环境 1.OS X EI Caption 10.11.1 & Xcode 7 2.Xcode安装Command Line Tools 3.iPhone 安装AppSync 2.Mobile ...
- [转]8 Regular Expressions You Should Know
Regular expressions are a language of their own. When you learn a new programming language, they're ...
- 设置ios中imageView图片自适应,
UIIimageView *imageView = [UIImageView alloc]init]; [imageView setContentScaleFactor:[[UIScreen mai ...
- Cocoapod安装使用和常见问题(转载)
1.cocoapod的按照,cocoapod是运行在ruby环境下的,在ruby环境的 ,像cocoapod这样的开源项目时放在放在rubygems服务器上面的,但国内访问https://ruby ...
- fbset视频参数说明
在机器上输入:fbset mode "1280x720-55" # D: 67.504 MHz, H: 40.961 kHz, V: 54.907 Hz geometry 128 ...