1. 安装依赖库:1

2sudo apt-get install libprotobuf-dev libleveldb-dev libsnappy-dev libopencv-dev libhdf5-serial-dev protobuf-compiler

sudo apt-get install --no-install-recommends libboost-all-dev

2. 安装BLAS:1

2sudo apt-get install libatlas-base-dev

(or install OpenBLAS or MKL for better CPU performance)

3.安装Opencv:下载 linux 版本 opencv 安装包,unzip解压到指定目录

在安装目录下执行下面code1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23sudo apt-get update

sudo apt-get upgrade // 更新

//安装依赖库

sudo apt-get install build-essential

sudo apt-get install cmake git 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

//安装opencv

sudo cmake .

sudo make

sudo make install

//配置环境变量

sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'

sudo ldconfig

sudo gedit/etc /bash.bashrc

PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig

export PKG_CONFIG_PATH

//编译samples程序:

cd samples

sudo cmake .

sudo make -j $(nproc)

cd cpp

//运行测试程序:

sudo ./cpp-example-facedetect ../data/lena.jpg

4. 安装 Matlab

5. 下载Caffe:1

2

3cd path_caffe // 到指定目录

git clone git://github.com/BVLC/caffe.git//下载Caffe

cp Makefile.config.example Makefile.config

修改Makefile,在

1

2

3LIBRARIES += glog gflags protobuf leveldb snappy \

lmdb boost_system hdf5_hl hdf5 m \

opencv_core opencv_highgui opencv_imgproc opencv_imgcodecs

处加入后面的opencv_imgcodecs,因为opencv3.0.0把imread相关函数放到imgcodecs.lib中了(原来是imgproc.lib)

CPU model修改Makefile.config文件:去掉CPU_ONLY:= 1的注释

GPU model

mint下安装英伟达驱动和cuda显得格外简单。我在ubuntu下折腾了n久,都以悲剧收场。

安装驱动: 打开mint的驱动管理器 直接安装即可

安装完成后 打开驱动管理器如图所示,

而且系统右下角会出现英伟达的图标,点击打开图标后显示

如果途中选中的是 Intel 那一项可能是因为bios显卡设置的问题,重启电脑进入bios,将显卡设置为独立显卡模式即可。

下载最新的cuda安装包(.deb文件)

sudo dpkg -i xxx.deb

sudo apt-get update

sudo apt-get insatll cuda

也可以直接用软件管理器打开.deb文件直接安装

安装完成后进入 /usr/local/cuda/samples/

编译例子    sudo make

全部编译完成后, 进入 samples/bin/x86_64/linux/release,

sudo下运行deviceQuery,如果出现下列显卡信息, 则驱动及显卡安装成功

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40sudo ./deviceQuery

./deviceQuery Starting.

CUDA Device Query (Runtime API) version (CUDART static linking)

Detected 1 CUDA Capable device(s)

Device 0: "NVS 4200M"

CUDA Driver Version / Runtime Version 7.0 / 7.0

CUDA Capability Major/Minor version number: 2.1

Total amount of global memory: 1024 MBytes (1073414144 bytes)

( 1) Multiprocessors, ( 48) CUDA Cores/MP: 48 CUDA Cores

GPU Max Clock rate: 1620 MHz (1.62 GHz)

Memory Clock rate: 800 Mhz

Memory Bus Width: 64-bit

L2 Cache Size: 65536 bytes

Maximum Texture Dimension Size (x,y,z) 1D=(65536), 2D=(65536, 65535), 3D=(2048, 2048, 2048)

Maximum Layered 1D Texture Size, (num) layers 1D=(16384), 2048 layers

Maximum Layered 2D Texture Size, (num) layers 2D=(16384, 16384), 2048 layers

Total amount of constant memory: 65536 bytes

Total amount of shared memory per block: 49152 bytes

Total number of registers available per block: 32768

Warp size: 32

Maximum number of threads per multiprocessor: 1536

Maximum number of threads per block: 1024

Max dimension size of a thread block (x,y,z): (1024, 1024, 64)

Max dimension size of a grid size (x,y,z): (65535, 65535, 65535)

Maximum memory pitch: 2147483647 bytes

Texture alignment: 512 bytes

Concurrent copy and kernel execution: Yes with 1 copy engine(s)

Run time limit on kernels: Yes

Integrated GPU sharing Host Memory: No

Support host page-locked memory mapping: Yes

Alignment requirement for Surfaces: Yes

Device has ECC support: Disabled

Device supports Unified Addressing (UVA): Yes

Device PCI Domain ID / Bus ID / location ID: 0 / 1 / 0

Compute Mode:

< Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) >

deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 7.0, CUDA Runtime Version = 7.0, NumDevs = 1, Device0 = NVS 4200M

Result = PASS

效果如下图所示:

然后查看CUDA Capability Major/Minor version number这一项,为2.1.

在Makefile.config文件中,修改

CuDNN model

安装CuDNN

下载CuDNN库文件:cudnn-7.0-linux-x64-v3.0-rc.tgz

tar -xzvf cudnn-7.0-linux-x64-v3.0-rc.tgz

cd cuda/lib64

sudo cp lib* /usr/local/cuda/lib64/

cd ..

cd include

sudo cp cudnn.h /usr/local/cuda/include/

在~/caffe/Makefile.config中,将# USE_CUDNN := 1的注释去掉,

即:USE_CUDNN := 1,并重新编译

6. 编译Caffe:

之前make过的话,要make clean命令清除之前的结果,然后重新执行下面的命令即可

1

2

3

4make clean

make all -j4

make test -j4

make runtest -j4

出现 error,具体信息如下:

1

2.build_release/tools/caffe: error while loading shared libraries: libcudart.so.7.0: cannot open shared object file: No such file or directory

make: 3* [runtest] Error 127

解决办法

sudo ldconfig /usr/local/cuda-7.0/lib64

error

SolverTest/3.TestInitTrainTestNets

F0910 11:19:15.516458 4395 cudnn_softmax_layer.cpp:19] Check failed: status == CUDNN_STATUS_SUCCESS (6 vs. 0) CUDNN_STATUS_ARCH_MISMATCH

Check failure stack trace:

因为笔记本上的NVS4200M的CUDA Capability是2.1,而官方的cudnn加速是不支持3.0以下的版本的,因此只能在Makefile.config中注释掉USE_CUDNN这行,最后终于编译成功。

执行data下的的相关文件下载数据

1

2

3sudo sh data/mnist/get_mnist.sh

sudo sh data/cifar10/get_cifar10.sh

sudo sh data/ilsvrc12/get_ilsvrc_aux.sh

运行Mnist例子

1

2sudo ./examples/mnist/create_mnist.sh

sudo ./examples/mnist/train_lenet.sh

7. gcc降级

ubuntu14.04(mint)自带的gcc版本是4.8,MATLAB2014a支持的最高版本为4.7x。因此,需要安装gcc4.7,

1

2

3

4

5

6

7

8

9sudo apt-get install gcc-4.7 g++-4.7 g++-4.7-multilib gcc-4.7-multilib

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.7 100

sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 50

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.7 100

sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 50

sudo update-alternatives --install /usr/bin/cpp cpp-bin /usr/bin/cpp-4.7 100

sudo update-alternatives --install /usr/bin/cpp cpp-bin /usr/bin/cpp-4.8 50

// 验证gcc默认版本:

gcc -v

8. 编译matlab借口

修改Makefile.config文件,配置matlab安装路径:

MATLAB_DIR :=/home/sun/app/matlab/R2015a

sudo make matcaffe

linux caffe运行,linux 安装Caffe相关推荐

  1. 毕设日志——linux服务器anaconda下安装caffe

    4.24 https://www.twblogs.net/a/5c1667c5bd9eee5e418436c7/

  2. linux下运行mcnp6安装教程,JBPM6教程-手把手教你安装JBPM

    JBPM6教程-手把手教你安装JBPM 1. 安装JBPM的先决条件: (1)JDK 1.6+以上,没有安装的话,猛击这里. (2)Ant 1.7+以上,没有安装的话,看看这里. 2. 下载JBPM安 ...

  3. opencv可以在linux上运行,linux上 安装并 运行opencv

    我是在树莓派上安装的. 1.先安装依赖项 OpenCV 2.2以后版本需要使用Cmake生成makefile文件,因此需要先安装cmake. sudo apt-get install build-es ...

  4. mask rcnn只能在linux里运行,maskrcnn-benchmark安装及常见错误

    Mask rcnn环境配置 在安装好Anaconda之后可以配置Mask RCNN了.这里我用的是maskrcnn-benchmark,环境搭建相对简单. 1. 创建虚拟环境: source acti ...

  5. 暗黑2在linux上运行,linux下能玩的类似暗黑2的中文游戏有哪些?

    你在用 Ubuntu Linux 之余,也许还要用Ubuntu Linux 来玩玩游戏吧!虽然Ubuntu Linux 用户可玩到 3D 游戏远远不如 Windows ,但 Ubuntu Linux ...

  6. drcom linux怎么运行,linux下使用drcom登录认证

    下载 首先感谢开发者: https://github.com/drcoms/drcom-generic 这个项目基于python实现了d,p,x版drcom认证,请到上述链接查看相关信息, 项目的wi ...

  7. linux memcached 运行,linux下查看Memcached运行状态

    查看Memcached运行状态的命令是:echo stats | nc 127.0.0.1 11211 查看memcached状态的基本命令,通过这个命令可以看到如下信息: STAT pid 2245 ...

  8. linux nohup 运行,linux – 如何获取使用nohup运行的程序列表

    当我开始使用$ nohup风暴dev-zookeper时, 方法1: prayagupd@prayagupd:/home/vmfest# jobs -l [1]+ 11129 Running nohu ...

  9. 计时 Linux 程序运行,linux 下计时程序

    #include #include #include int main() { struct timeval tv, end; gettimeofday(&tv, NULL); // 因为不需 ...

最新文章

  1. react非常适合入门者学习使用的后台管理框架
  2. MySQL 5.1以下如何动态抓取查询日志
  3. #161: 给定n*n由0和1组成的矩阵,如果矩阵的每一行和每一列的1的数量都是偶数,则认为符合条件。 你的任务就是检测矩阵是否符合条件...
  4. linux下使用make指令生成程序时提示“XXX is up to date”问题的解决办法
  5. SQL Server 2005 中附加只有mdf文件的数据库(修复置疑的数据库)
  6. java 正则表达式 table_Java 使用正则表达式
  7. 【快速入门Linux】6_Linux命令—用户权限相关命令
  8. 从零开始山寨Caffe·贰:主存模型
  9. Springboot的工作机制:5 总结
  10. 【教程】适用于AIDE 2.1.5版的API文档设置
  11. Java笔试题大全(附带答案)
  12. 标准化降水蒸散发指数 SPEI 算法及代码(Java)
  13. 二三、A转置乘以A可逆
  14. 悼念前端大牛司徒正美
  15. C#串口通信——协议格式
  16. Trident API
  17. 从平凡到不平凡(转)
  18. 外貌测试软件准确吗,相貌测试(史上最准的颜值测试)
  19. java继承关键字extends
  20. CTime 的一般常用方法

热门文章

  1. 超级账本、微众银行与迅雷链同台论链 区块链将从技术共识走向应用共识
  2. Ubuntu 18.04 版本中安装mysql 8的方法
  3. [Java] Lock(锁)的tryLock失败是否需要unlock?
  4. 保守的国美再一次进击社交电商,前途未卜?
  5. hackthebox Busqueda EASY难度 一把梭哈
  6. 护眼灯对孩子眼睛好吗?推荐眼科医生推荐的台灯
  7. matlab建立mex,Visual Studio创建Matlab mex(dll)函数
  8. Go解密之路——GPM
  9. allegro16.3中负片电源和地的操作
  10. 你真的知道什么是项目吗?项目的基本概念