由于实验需要,在实验室电脑上搭建深度学习Caffee框架。一共花了两天的时间,其中遇到了不少的问题,记录一下。
Caffee在配置上相对来说比较麻烦,需要前期安装的东西比较多,逐一介绍。

  1. CUDA:NVIDIA系列显卡支持的GPU编程框架,其实如果本身电脑是AMD的显卡,不用装也可用Caffee,只是速度会比较慢。所以最好有一块像样的显卡,最后我就败在这个上面了。。。
  2. MKA或是OpenAtlas或atlas:这个是科学计算库,三种选安装一个就行了。MKA是Intel公司推出的,性能以及服务上会比较好,学生的话可以上官网上申请学生试用版。但是这个比较大,建议安装atlas就可以了,Caffee默认用的就是这个。
  3. OpenCV:这个做图像的都知道,我就不多说了。
  4. Python:现在流行的脚本编程语言,Caffee支持使用。或者安装Anaconda2也行,Anaconda2是独立于Python的一个库,用这个也可以。
  5. 最后这个也是最重要的,操作系统。linux就可以了,我用的是Ubuntu14.04。

下面一步步来详细说,默认你已经安装好Ubuntu系统,如果还没有,网上教程找找看。

CUDA安装

  1. NVIDIA显卡驱动安装
    Ubuntu14.04默认安装的显卡驱动是nouveau,这个不适合。所以需要安装新的显卡驱动。这部分查看我的一篇博客 Ubuntu 14.10安装显卡驱动 ,方法是一样的。

  2. CUDA6.5安装
    从官网上下载对应的安装包,我这里下载的是cuda_6.5.14_linux_64.run。这个安装包里其实有三个部分,包括一个显卡驱动、CUDA安装包还有一个CUDA例子。在安装过程中注意显卡驱动不需要安装了,注意!

sudo ./cuda_6.5.14_linux_64.run

这样CUDA应该已经安装了,但是安装最后会提示会有些问题,这个其实是samples编译需要的库没有安装,后续安装即可,暂时不管。安装CUDA需要最后完成三件事。默认的安装目录为/usr/local/cuda-6.5
第一:把CUDA安装后的bin加入到系统环境变量中

sudo vim /etc/profile
文件中添加 export PATH=/usr/local/cuda-6.5/bin/:$PATH

执行使配置生效

source /etc/profile

第二:把CUDA编程需要的库加入到系统链接库中
在/etc/ld.so.conf.d/目录下建立cuda.conf文件,写入

/urs/local/cuda-6.5/lib64

执行使配置生效

sudo ldconfig

第三:编译CUDA提供的samples,samples默认的安装目录为/home/yourname/NVIDIA_CUDA-6.5_Samples
下载需要的库,这个是上面安装CUDA时最后提示问题需要的库,这里安装就可以了。

sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libglu1-mesa-dev

编译samples,进入到samples目录下面

sudo make

完成后,测试一下有没有成功。进入samples/bin/x86_64/linux/release目录,里面有个deviceQuery程序,执行即可

sudo ./deviceQuery

如果出现下面的信息,则表示CUDA已经没有问题了。。。(电脑显卡太差了。。。)

jianghh@jianghh-Precision-T1500:~/NVIDIA_CUDA-6.5_Samples/bin/x86_64/linux/release$ ./deviceQuery
./deviceQuery Starting...CUDA Device Query (Runtime API) version (CUDART static linking)Detected 1 CUDA Capable device(s)Device 0: "GeForce 310"CUDA Driver Version / Runtime Version          6.5 / 6.5CUDA Capability Major/Minor version number:    1.2Total amount of global memory:                 512 MBytes (536477696 bytes)( 2) Multiprocessors, (  8) CUDA Cores/MP:     16 CUDA CoresGPU Clock rate:                                1402 MHz (1.40 GHz)Memory Clock rate:                             790 MhzMemory Bus Width:                              64-bitMaximum Texture Dimension Size (x,y,z)         1D=(8192), 2D=(65536, 32768), 3D=(2048, 2048, 2048)Maximum Layered 1D Texture Size, (num) layers  1D=(8192), 512 layersMaximum Layered 2D Texture Size, (num) layers  2D=(8192, 8192), 512 layersTotal amount of constant memory:               65536 bytesTotal amount of shared memory per block:       16384 bytesTotal number of registers available per block: 16384Warp size:                                     32Maximum number of threads per multiprocessor:  1024Maximum number of threads per block:           512Max dimension size of a thread block (x,y,z): (512, 512, 64)Max dimension size of a grid size    (x,y,z): (65535, 65535, 1)Maximum memory pitch:                          2147483647 bytesTexture alignment:                             256 bytesConcurrent copy and kernel execution:          Yes with 1 copy engine(s)Run time limit on kernels:                     YesIntegrated GPU sharing Host Memory:            NoSupport host page-locked memory mapping:       YesAlignment requirement for Surfaces:            YesDevice has ECC support:                        DisabledDevice supports Unified Addressing (UVA):      NoDevice PCI Bus ID / PCI location ID:           1 / 0Compute Mode:< Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 6.5, CUDA Runtime Version = 6.5, NumDevs = 1, Device0 = GeForce 310
Result = PASS

OpenCV安装
关于OpenCV在ubuntu下的安装方法,有人写了完整的脚本,直接用就行了。下载地址:https://github.com/jayrambhia/Install-OpenCV
下载适合自己的版本脚本,执行即可

sudo ./opencv2_4_9.sh

atlas安装
这个直接安装即可

sudo apt-get install libatlas-base-dev 

安装后,把相应的库添加到系统的链接库路径中。atlas默认安装目录为/usr/lib/atlas-base/
在/etc/ld.so.conf.d/目录下添加atlas.conf,文件中添加

/usr/lib/atlas-base
/usr/lib/altas-base/atlas

执行使配置生效

sudo ldconfig

安装其他的依赖库

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

安装Python环境
系统默认有python环境,我们先安装pip

sudo apt-get install python-pip

下载caffee包,解压后进入python目录,执行下面命令

for req in $(cat requirements.txt); do sudo pip install $req; done

这样前面部分就差不多了,开始安装caffee
Caffee安装
进入caffee目录,先复制一下配置文件Makefile.config,这个里面是一些参数可能需要修改。大家直接看自己配置情况修改就没问题了,下面开始编译Caffee。

make all -j4
make test
maket runtest

这样整个就没问题了,剩下你就可以看caffee提供的例子了。我试了一下mnist这个数据,正确率有99.07%!!!很牛叉呀。。。

Ubuntu14.04+CUDA6.5+OpenCV2.4+Caffee配置相关推荐

  1. 【非原创】Ubuntu14.04+cuda6.5+opencv2.4.9+caffe配置记录

    Ubuntu14.04+cuda6.5+opencv2.4.9+caffe配置记录 从4月5日差不多开始安装,到今天4月15日,快两个星期了.如果加上之前自己看点Linux的时间,这折腾的有两个星期( ...

  2. Ubuntu14.04+cuda6.5+opencv2.4.9+caffe配置记录

    从4月5日差不多开始安装,到今天4月15日,快两个星期了.如果加上之前自己看点Linux的时间,这折腾的有两个星期(半个月了).哎,快装好了,我也快崩溃了,真的想放弃的时候,突然找到个博客,好像照它的 ...

  3. ubuntu14.04+cuda6.5+opencv2.4.9+cuda-convnet2配置

    第一次这么正式的写技术博客,一是锻炼下写总结的能力,二来也算是由于自己看技术贴多却从来没有贡献过自己的感到羞愧. 1.准备 一.首先,运行环境为ubuntu14.04,因此本文都假设大家已经装好了ub ...

  4. Ubuntu14.04+caffe+cuda8.0+cudnn5.0配置

    Ubuntu14.04+caffe+cuda8.0+cudnn5.0配置 自从实验室配置了新电脑,我们就开始折腾了~ 一开始是只菜鸟,Linux是啥都闹不清,因为实验室要用caffe研究深度学习,然后 ...

  5. ubuntu14.04+cuda7.0+opencv2.4.9

    安装了ubuntu14.04 分辨率有问题,于是安装英伟达显卡驱动,一个比较简单地方法就是安装Cuda,这里安装的是Cuda7.0版本. 原文地址:http://blog.csdn.net/alten ...

  6. Ubuntu14.04下FTP服务器的搭建配置

    首先说明一下,我是在虚拟机中装的Ubuntu14.04,物理机是Win10,最初只是为了在两个系统间传输文件才在Ubuntu中安装了ftp服务器,从Windows端登陆其即可.最初也是按照网上的各种教 ...

  7. ubuntu14.04+cuda8.0+cudnn5.1+torch7配置整理

    实际上教程网上有很多,这里说下自己遇到的几个坑. 很少有人提到(包括torch7官方)CUDA与torch的安装顺序,我这里测试发现先安装torch再cuda,总是各种问题,所以,先cuda,cudn ...

  8. Ubuntu14.04下openni2以及nite2的配置-kinectv1篇

    弄了好几次,总算是搞好了,先说一下我的系统配置:32 bit,ubuntu14.04 LTS,US2.0接口(for kinect v1),kinect v1,nite2.0.0(x86),openn ...

  9. 【opencv】ubuntu14.04上编译opencv2.4

    参考博客 https://blog.csdn.net/c406495762/article/details/62896035 1.安装依赖库 sudo apt-get install build-es ...

  10. Ubuntu14.04与Win10双系统环境的配置(引导, 无线网卡)

    为了学机器学习,给自己配了台电脑,默认装了Win10.而跑AI程序公认的是linux的支持更好,效率也更高,更贴近于工作状态.平时玩游戏什么的也需要WIN,所以就想装一个双系统.说下我的机器情况: 华 ...

最新文章

  1. 惊!史上最全的select加锁分析(Mysql)
  2. 自动驾驶场景下的高效激光里程计
  3. C++中为什么要引入抽象基类和纯虚函数?
  4. OpenCASCADE:使用 扩展数据交换XDE之子形状的管理
  5. JPA教程:实体映射-第2部分
  6. CNN框架的搭建及各个参数的调节
  7. 朴素贝叶斯算法注意事项(有待完善)
  8. Weka数据挖掘平台
  9. 蓝卡攻略_FGO紫式部简评:蓝卡连发输出,稀有的群体强解耐性拐
  10. monkeyrunner之环境搭建及实例(三)
  11. Emacs之魂(七):变量捕获与卫生宏
  12. Python自动化爬取天眼查数据
  13. 正则系列4: re.sub用法
  14. 零知识证明 - 从QSP到QAP
  15. cc共享许可协议_如何以及为何使用知识共享许可的作品
  16. 应用商店调研-360手机助手
  17. 探讨Linux CPU的上下文切换原由
  18. 浏览器刷新、关闭页面与统计在线人数
  19. 高校教师开计算机培训中心,计算中心
  20. python:二.Python教程

热门文章

  1. java Springboot 生成 二维码 +logo
  2. 安装moodle3.6
  3. CentOS7.5中Moodle 3.7之PHP Cli(命令行)方式安装
  4. C语言程序设计谭浩强(第四版)部分课后习题作答——第四章
  5. java swf pdf_基于Java SWFTools实现把pdf转成swf
  6. 直插式电阻电容封装与尺寸图…
  7. [读书笔记]《Windows游戏编程之从零开始》(零)
  8. HeadFirstJava 10数字与静态
  9. Delphi可视化精讲视频教程-丁鹏-专题视频课程
  10. 部署VC2008应用程序时不能运行解决办法