官网:

http://caffe.berkeleyvision.org/installation.html#compilation

参考网站:

http://www.cnblogs.com/dupuleng/articles/4213834.html

http://www.cnblogs.com/empty16/p/4793404.html

-------------------------------------------------------------------------------------------------------------------------------------

一、安装build-essentials

  安装开发所需要的一些基本包

 sudo apt-get install build-essential

二、CUDA安装

这一步包括三个部分:

  1. nvidia驱动
  2. cuda-toolkit
  3. cuda-samples

  在CPU模式下仅需要安装cuda-toolkit,接下来介绍如何安装cuda-toolkit

2.1 下载CUDA6.5

下载方式:windows下载(http://developer.download.nvidia.com/compute/cuda/6_5/rel/installers/cuda_6.5.14_linux_64.run)通过ssh传到Ubuntu

或者直接在Ubuntu中输入:

 wget http://developer.download.nvidia.com/compute/cuda/6_5/rel/installers/cuda_6.5.14_linux_64.run

通过下列命令增加.run文件的执行权限:

 chmod +x *.run

然后解压下载到的文件:

./cuda_6..14_linux_64.run  --extract=extract_path  (说明:需要将extract_path改为将文件解压到的地点)

解压下载得到的.run文件,得到三个文件,我们只安装第一个,即cuda-toolkit包

    • CUDA安装包: cuda-linux64-rel-6.5.14-18749181.run
    • NVIDIA驱动: NVIDIA-Linux-x86_64-340.29.run
    • SAMPLE包: cuda-samples-linux-6.5.14-18745345.run

2.2 安装cuda

  安装CUDA需要在纯命令行下进行(非常重要),按 ctrl+alt+F1进入tty,登录后执行如下命令

sudo service lightdm stop  

或者

sudo stop lightdm

执行下列命令安装CUDA,按照提示一步步安装,其中会让你选择安装目录,接受协议等,为方便选择默认路径,直接回车即可。

sudo ./cuda-linux64-rel-6.5.14-18749181.run

2.3 添加环境变量

安装完成后在/etc/profile中添加环境变量,在文件最后添加

PATH=/usr/local/cuda-6.5/bin:$PATH
export PATH

    保存后,执行下列命令,使环境变量立即生效

source /etc/profile

   2.4 添加lib库路径

    在/etc/ld.so.conf.d/目录下增加文件cuda.conf,内容如下 

/usr/local/cuda-6.5/lib64

    执行下列命令立刻生效

sudo ldconfig

    注: 如果你没有使用默认路径,将上面的路径换成自己相应的路径即可

 2.5 退出命令行

sudo service lightdm start

或者

sudo start lightdm

三、安装BLAS

BLAS有三个版本:ATLAS, MKL, OpenBLAS。MKL是收费的,也用student版本,不过需要使用你所在单位的邮箱来申请, 其它两种是免费的,这里使用OpenBlas。听说MKL效率上比其它两种好很多。。

1. 下载地址:

 wget https://codeload.github.com/xianyi/OpenBLAS/tar.gz/v0.2.15

   2. 解压

 tar -zvxf OpenBLAS-0.2.

3.进入解压生成的文件进行编译安装:

直接输入:make; 估计会报错: make[1]: *** [sgemm.o] Error 1

那么输入:make TARGET=NEHALEM

编译好后会提示类似于: make PREFIX=/your/path/lib install等;它的意思就是安装lib到相应的地址

输入: make PREFIX=/usr/local/OpenBlas/

  4. 添加lib库路径: 在/etc/ld.so.conf.d/目录下增加文件OpenBlas.conf,内容如下

/usr/local/OpenBlas/lib

5. 执行下列命令立刻生效

sudo ldconfig

四、安装Opencv

  1.  从github上下载安装脚本:https://github.com/jayrambhia/Install-OpenCV
  2.  进行Ubuntu/2.4目录,对所有脚本增加可执行权限
sudo chmod +x *.sh

安装最新版本(当前为2.4.9),有人自己写了2.4.20版本的,有兴趣的可以去下:http://pan.baidu.com/s/1m3hQu

  3.    安装依赖项

sudo ./dependencies.sh

  4.   安装opencv 2.4.9

sudo sh ./opencv2_4_9.sh

  这块儿时间比较长,保证网络连接,需要联网下载安装包。

  注意:中途可能会报错:

1
opencv-2.4.9/modules/gpu/src/nvidia/core/NCVPixelOperations.hpp(51): error: a storage class is not allowed in an explicit specialization

  解决方案: 下载NCVPixelOperations.hpp ,替换掉Ubuntu/2.4/Opencv/opencv2.4.9/moduels/gpu/src/nvidia/core目录中的NCPixelOperations.hpp文件,重新执行安装命令

sudo sh ./opencv2_4_9.sh

五、安装其它依赖项

  Ubuntu14.04用户执行

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

  其它版本参考官网说明

六、安装Caffe所需要的Python 环境(未测试)

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

七、安装Caffe所需要的matlab环境

  1. 下载:自己从网上找资源吧,百度云盘中有比较多的资源。注意:caffe只支持matlab12b以上的版本
  2. 安装具体流程参考:http://blog.csdn.net/aimatfuture/article/details/8058156

八、编译Caffe

cp Makefile.config.example Makefile.config
  • 根据自己环境修改相应内容

   1 取消 CPU_ONLY := 1前面的注释

   2. cuda 安装路径改为自己的路径 : CUDA_DIR := /usr/local/cuda-6.5

   3. 配置路径:实现caffe对python和matlab接口的支持  

PYTHON_INCLUDE := /usr/include/python2.7 \

/usr/lib/python2.7/dist-packages/numpy/core/include

PYTHON_LIB := /usr/local/lib

INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include

LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib

MATLAB_DIR := /usr/local/MATLAB/R2014a

   4. BLAS := open (根据自己选择的版本,分别设为atlas, mkl, open

BLAS_INCLUDE :=/usr/local/OpenBlas/include

       BLAS_LIB :=/usr/local/OpenBlas/lib

       Makefile中: BLAS ?= atlas 改成: BLAS ?= open

  • 编译caffe
sudo make all -j2
sudo make test
sudo make runtest

    

在一这步可能会碰到问题:undefined refrence to ' cudaGetDevice '

    解决方法:

      1. 修改Makefile.config, 修改CUSTOM_CXX := g++-4.6

      2. 执行命令 sudo apt-get install gcc-4.6 g++-4.6 gcc-4.6-multilib g++-4.6-multilib
      3. 修改以下两个文件
        vi src/caffe/common.cpp
        vi tools/caffe.cpp
        使用google替代gflags

      4. 重新make

   如果在make的过程中提示:“error while loading shared libraries: xxx.so.x”,可能是cuda及OpenBLAS环境变量没有设置正确,检查相应步骤,可参考:http://blog.csdn.net/sahusoft/article/details/7388617

九、编译matlab wrapper 

make matcaffe

十、编译python wrapper

make pycaffe

十一、使用MNIST数据集进行测试

  这部分可参考caffe官网:http://caffe.berkeleyvision.org/gathered/examples/mnist.html,非常详细。

  注:这一部分默认在caffe的目录下完成,不能去相应的子目录下执行脚本,因为脚本中的路径是相对于caffe目标的相对路径 。

  1. 获取数据: sudo sh data/mnist/get_mnist.sh
  2. 重建lmdb/ leveldb文件:sh examples/mnist/create_mnist.sh       ( caffe支持三种数据格式输入: images(.jpg,.png等),leveldb, lmdb)
  3. 切换到CPU模式: 在lenet_solver.prototxt中修改 solover_mode = CPU , 在最后一行
  4. 训练minist: sudo sh examples/mnist/train_lenet.sh

  没有错误的话,就可以看到一串串的输出信息啦。

会进行10000次的迭代,耐心的等待吧!

十二、测试训练的模型

  当所有数据都训练好之后,接下来就是如何将模型应用到实际数据了:

  ./build/tools/caffe.bin test -model=examples/mnist/lenet_train_test.prototxt -weights=examples/mnist/lenet_iter_10000.caffemodel -gpu=0

  如果没有GPU则使用

  ./build/tools/caffe.bin test -model=examples/mnist/lenet_train_test.prototxt -weights=examples/mnist/lenet_iter_10000.caffemodel

十二、在CPU模式下,所以不安装CuDnn

Caffe + Ubuntu 14.04 64bit + CUDA6.5 + 无GPU 配置的更多相关文章

  1. 【转载】Caffe + Ubuntu 14.04 + CUDA 6.5 新手安装配置指南

    洋洋洒洒一大篇,就没截图了,这几天一直在折腾这个东西,实在没办法,不想用Linux但是,为了Caffe,只能如此了,安装这些东西,遇到很多问题,每个问题都要折磨很久,大概第一次就是这样的.想想,之后应 ...

  2. Ubuntu 14.04 64bit 安装tensorflow(GPU版本)

    本博客主要用于在Ubuntu14.04 64bit 操作系统上搭建google开源的深度学习框架tensorflow. 0.安装CUDA和cuDNN 如果要安装GPU版本的tensorflow,就必须 ...

  3. Caffe + Ubuntu 14.04 64bit + 无CUDA(linux下安装caffe(无cuda)以及python接口)

    安装Caffe指导书 环境: Linux 64位 显卡为Intel + AMD,非英伟达显卡 无GPU 一. 安装准备工作 1. 以管理员身份登录 在左上角点击图标,搜索terminal(即终端),以 ...

  4. Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明

    本文安装显卡驱动的方式已经过时, 最新安装说明请参考发布在Gist上的这篇文章,如有任何疑问,仍然欢迎在本文下留言 :P (本文档使用同一块NVIDIA显卡进行显示与计算, 如分别使用不同的显卡进行显 ...

  5. Caffe + Ubuntu 14.04 64bit + CUDA 6.5 配置说明2

    1. 安装build-essentials 安装开发所需要的一些基本包 sudo apt-get install build-essential 2. 安装NVIDIA驱动 (3.4.0) 2.1 准 ...

  6. Window7下安装Ubuntu 14.04 64bit

    本文章主要讲解如何在Windows7操作系统中硬盘安装Ubuntu 14.04 64bit: 1.准备文件 1.ubuntu-14.04.4-desktop-amd64.iso 2.EasyBCD.e ...

  7. 在Ubuntu 14.04 64bit上安装Markdown和绘图软件Haroopad

    简介 Haroopad:一款让你欲罢不能的Markdown编辑器 身为大程序员,我本来是不需要 Markdown 编辑器的,但是 Haroopad 让我简直欲罢不能,不能再爱更多.跨平台,代码高亮,V ...

  8. 在Ubuntu 14.04 64bit上安装numpy和matplotlib库

    原文:http://blog.csdn.net/tao_627/article/details/44004541 按照这个成功安装! 机器学习是数据挖掘的一种实现形式,在学习<机器学习实战> ...

  9. Installation Guide of Ubuntu 14.04, 64bit on Dell Server

    Installation Guide of Ubuntu 14.04, 64bit on Dell Server 准备:U盘(已通过ultraiso刻录ISO镜像). 1.插入U盘: 2.启动服务器, ...

随机推荐

  1. 【iCore3 双核心板_ uC/OS-III】例程二:任务的建立与删除

    实验指导书及代码包下载: http://pan.baidu.com/s/1bD7ulK iCore3 购买链接: https://item.taobao.com/item.htm?id=5242294 ...

  2. Enum的使用

    在项目开发中经常会使用到枚举,下面将举个例子,展示枚举的使用,不说废话,直接上代码. package com.tom.enumTest; public enum StatusType { A(&quo ...

  3. dubbo 试用全过程

    概述: dubbo服务容器是一个standalone的启动程序,因为后台服务不需要Tomcat或JBoss等Web容器的功能,如果硬要用Web容器去加载服务提供方,增加复杂性,也浪费资源. 服务容器只 ...

  4. Nodejs开发(2.连接MongoDB)

    一.先配置MongoDB Win10下下载那个安装版,zip版的会报却各种DLL,安装在你希望的路径,实在安装错了,就剪切过来也行(本例E:\mongodb). 然后是配置启动脚本,就是写一个bat文 ...

  5. linux添加ip、路由相关命令

    1- Linux添加永久路由vi /etc/sysconfig/network-scripts/route-eth1ADDRESS0=192.168.10.0NETMASK0=255.255.255. ...

  6. RDIFramework.NET ━ 9.13 系统日志与系统异常管理 ━ Web部分

    RDIFramework.NET ━ .NET快速信息化系统开发框架 9.13  系统日志与系统异常管理 -Web部分  一个软件在投入运行时不可能没有任何异常,在软件发生异常时及时的记录下来,也好我 ...

  7. Struts2(三):新建Struts2工程

    下载的struts2xx-all.zip包对搭建项目的作用 一般情况下,我们下载一个Struts2的full包时,并不知道新建过程中需要哪些包,那么这时我们可以从下载的包中解压出的目录\apps\st ...

  8. Mac下安装UPnP Inspector

    由于工作中需要用到UPnP Inspector这个工具,而这个工具在windows下安装非常简单,在Mac下安装却很麻烦,在此记录安装流程. 这个工具依赖于两个其他的库:Coherence(一个DLN ...

  9. .NET WebForm简介

    WebForm简介 微软开发的一款产品,它将用户的请求和响应都封装为控件.让开发者认为自己是在操作一个windows界面.极大地提高了开发效率. C/S(客户端) 主要是在本机执行(每一个客户端是独立 ...

  10. jquery隐藏table表格的某一列

    jquery隐藏table表格的某一列: $('table tr').find('td:eq(13)').hide(); 隐藏table的第13列