感谢支持
我们一直在努力

Ubuntu 14.04 64bit下Caffe + Cuda6.5/Cuda7.0 安装配置教程

随着深度学习快速发展的浪潮,许多有兴趣的工作者都转入了这个有着很好前景的研究中。工欲善其事,必先利其器。Caffe是一个很不错的深度学习框架,但它的安装步骤比较繁琐,将许多新手拒之门外,于是我就写了这篇博客,主要是我之前安装Caffe也是费了很多时间,由零基础慢慢学习,很羡慕那些有师兄师姐可以帮助的人。

下面开始正式介绍相关安装步骤,该教程主要包括以下几方面的内容:

第一部分:安装所需要的包
第二部分:NVIDIA 驱动和CUDA 安装
第三部分:Caffe安装和测试
第一部分:安装所需要的包

第一部分:安装所需要的包

  1. sudo apt-get install build-essential  # basic requirement 
  2. 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 #required by caffe 

sudo apt-get install build-essential  # basic requirement
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 #required by caffe

提示:使用 sudo apt-get install libboost-all-dev ,默认安装boost1.54版本,如果想要使用1.55版本,可以使用命令:sudo apt-get install libboost1.55-all-dev(推荐)

Ubuntu 14.04 安装配置CUDA  http://www.linuxidc.com/Linux/2014-10/107501.htm

Ubuntu 12.04配置NVIDIA CUDA5.5实录  http://www.linuxidc.com/Linux/2014-10/107502.htm

Ubuntu安装Theano+CUDA  http://www.linuxidc.com/Linux/2014-10/107503.htm

关于Ubuntu 12.04 下 CUDA5.5 的安装请参看如下链接 Ubuntu 12.04 安装 CUDA-5.5

Ubuntu 16.04 LTS+NVIDIA@GT620M+CUDA6.5环境搭建总结  http://www.linuxidc.com/Linux/2016-10/135911.htm

二部分:NVIDIA 驱动和CUDA 安装

重要提示:安装完Ubuntu系统以及CUDA之后,切莫进行系统更新,会引起不能正常进入桌面的情况,会令你很烦恼的。

安装之前请进行md5检验,确保安装包完整,检验命令为:md5sum 文件名,查看输出的md5sum是否跟你有的相同。

以cuda-repo-ubuntu1404-7-0-local_7.0-28_amd64.deb为例

目前CUDA官网已经提供离线*.deb安装的方法,本教程提供两种安装方法(*.deb和*.run)

(一)离线 *.deb 安装方法(推荐)

此方法不用切换到文本模型即可安装。

(2.1.1)首先下载 对应系统的 离线CUDA安装包   (*.deb) 链接:https://developer.nvidia.com/cuda-toolkit

(2.1.2)安装下载到的 CUDA离线包 (cuda-repo-ubuntu1404-7-0-local_7.0-28_amd64.deb)

  1. 添加软件源 
  2. sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb 
  3.  
  4. 更新软件源 
  5. sudo apt-get update 
  6.  
  7. 安装CUDA 
  8. sudo apt-get install cuda 
  9.  
  10. 重启计算机(通过boot设置独立显卡支持) 
  11. sudo reboot 

添加软件源
sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb

更新软件源
sudo apt-get update

安装CUDA
sudo apt-get install cuda

重启计算机(通过boot设置独立显卡支持)
sudo reboot

(2.1.3)修改环境变量

1)在 /etc/profile 文件中添加以下内容:

  1. export PATH=/usr/local/cuda-7.0/bin:$PATH 

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

命令:

  1. sudo vim /etc/profile 

2)使环境变量生效

命令:

  1. source /etc/profile
source /etc/profile

 (2.1.4)添加lib库路径

1)在  /etc/ld.so.conf.d/  文件夹下添加 cuda.conf 文件,内容如下:

  1. /usr/local/cuda-7.0/lib64 

/usr/local/cuda-7.0/lib64

 2)使库路径立即生效

  1. sudo ldconfig  [-v,可选] 

sudo ldconfig  [-v,可选]

  (2.1.5)安装CUDA Samples

命令:

  1. sudo sh cuda-samples-linux-6.5.14-18745345.run 

sudo sh cuda-samples-linux-6.5.14-18745345.run

一直aceept就行,建议使用默认路径。

编译CUDA Samples

命令:

  1. cd /usr/local/cuda-6.5/samples 
  2. sudo make 

cd /usr/local/cuda-6.5/samples
sudo make

编译完成后,进入路径:/samples/bin/x86_64/linux/release

运行命令:

  1. ./deviceQuery
./deviceQuery

输出:

  1. ./deviceQuery Starting… 
  2.  
  3.  CUDA Device Query (Runtime API) version (CUDART static linking) 
  4.  
  5. Detected 1 CUDA Capable device(s) 
  6.  
  7. Device 0: “Tesla K40c” 
  8.   CUDA Driver Version / Runtime Version          6.5 / 6.5 
  9.   CUDA Capability Major/Minor version number:    3.5 
  10.   Total amount of global memory:                 11520 MBytes (12079136768 bytes) 
  11.   (15) Multiprocessors, (192) CUDA Cores/MP:     2880 CUDA Cores 
  12.   GPU Clock rate:                                745 MHz (0.75 GHz) 
  13.   Memory Clock rate:                             3004 Mhz 
  14.   Memory Bus Width:                              384-bit 
  15.   L2 Cache Size:                                 1572864 bytes 
  16.   Maximum Texture Dimension Size (x,y,z)         1D=(65536), 2D=(65536, 65536), 3D=(4096, 4096, 4096) 
  17.   Maximum Layered 1D Texture Size, (num) layers  1D=(16384), 2048 layers 
  18.   Maximum Layered 2D Texture Size, (num) layers  2D=(16384, 16384), 2048 layers 
  19.   Total amount of constant memory:               65536 bytes 
  20.   Total amount of shared memory per block:       49152 bytes 
  21.   Total number of registers available per block: 65536 
  22.   Warp size:                                     32 
  23.   Maximum number of threads per multiprocessor:  2048 
  24.   Maximum number of threads per block:           1024 
  25.   Max dimension size of a thread block (x,y,z): (1024, 1024, 64) 
  26.   Max dimension size of a grid size    (x,y,z): (2147483647, 65535, 65535) 
  27.   Maximum memory pitch:                          2147483647 bytes 
  28.   Texture alignment:                             512 bytes 
  29.   Concurrent copy and kernel execution:          Yes with 2 copy engine(s) 
  30.   Run time limit on kernels:                     No 
  31.   Integrated GPU sharing Host Memory:            No 
  32.   Support host page-locked memory mapping:       Yes 
  33.   Alignment requirement for Surfaces:            Yes 
  34.   Device has ECC support:                        Enabled 
  35.   Device supports Unified Addressing (UVA):      Yes 
  36.   Device PCI Bus ID / PCI location ID:           1 / 0 
  37.   Compute Mode: 
  38.      < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) > 
  39.  
  40. deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 6.5, CUDA Runtime Version = 6.5, NumDevs = 1, Device0 = Tesla K40c 
  41. Result = PASS
./deviceQuery Starting...

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

Detected 1 CUDA Capable device(s)

Device 0: "Tesla K40c"
  CUDA Driver Version / Runtime Version          6.5 / 6.5
  CUDA Capability Major/Minor version number:    3.5
  Total amount of global memory:                 11520 MBytes (12079136768 bytes)
  (15) Multiprocessors, (192) CUDA Cores/MP:     2880 CUDA Cores
  GPU Clock rate:                                745 MHz (0.75 GHz)
  Memory Clock rate:                             3004 Mhz
  Memory Bus Width:                              384-bit
  L2 Cache Size:                                 1572864 bytes
  Maximum Texture Dimension Size (x,y,z)         1D=(65536), 2D=(65536, 65536), 3D=(4096, 4096, 4096)
  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: 65536
  Warp size:                                     32
  Maximum number of threads per multiprocessor:  2048
  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): (2147483647, 65535, 65535)
  Maximum memory pitch:                          2147483647 bytes
  Texture alignment:                             512 bytes
  Concurrent copy and kernel execution:          Yes with 2 copy engine(s)
  Run time limit on kernels:                     No
  Integrated GPU sharing Host Memory:            No
  Support host page-locked memory mapping:       Yes
  Alignment requirement for Surfaces:            Yes
  Device has ECC support:                        Enabled
  Device supports Unified Addressing (UVA):      Yes
  Device PCI Bus ID / PCI location ID:           1 / 0
  Compute 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 = Tesla K40c
Result = PASS

如果输出上述信息,恭喜你,NVIDIA和CUDA安装成功,则可以继续进行下一步安装Caffe环境。

(2.1.6)验证NVIDIA 驱动和CUDA是否安装成功

查看安装NVIDIA驱动版本 命令:

  1. cat /proc/driver/nvidia/version 

输出

  1. NVRM version: NVIDIA UNIX x86_64 Kernel Module  340.96  Sun Nov  8 22:33:28 PST 2015 
  2. GCC version:  gcc version 4.7.3 (Ubuntu/Linaro 4.7.3-12ubuntu1) 
NVRM version: NVIDIA UNIX x86_64 Kernel Module  340.96  Sun Nov  8 22:33:28 PST 2015
GCC version:  gcc version 4.7.3 (Ubuntu/Linaro 4.7.3-12ubuntu1) 

从输出信息可以看出NVIDIA驱动版本为 340.96

安装完成后,就可以重新启动桌面服务了。

命令:

  1. sudo start lightdm 

(二)离线 *.run 安装方法

使用该方法安装,可能需要尝试多次安装

2.2.1)验证显卡是否支持CUDA

命令:

  1. lspci | grep -i nvidia 
lspci | grep -i nvidia

查看该计算机显卡是否存在于 链接 https://developer.nvidia.com/cuda-gpus 中。

2.2.2)验证系统,确定为x86架构,64bit系统

命令:

  1. uname -m && cat /etc/*release 
uname -m && cat /etc/*release

输出:

  1. x86_64 
  2. DISTRIB_ID=Ubuntu 
  3. DISTRIB_RELEASE=14.04 
  4. DISTRIB_CODENAME=trusty 
  5. DISTRIB_DESCRIPTION=“Ubuntu 14.04.2 LTS” 
  6. NAME=“Ubuntu” 
  7. VERSION=“14.04.2 LTS, Trusty Tahr” 
  8. ID=ubuntu 
  9. ID_LIKE=debian 
  10. PRETTY_NAME=“Ubuntu 14.04.2 LTS” 
  11. VERSION_ID=“14.04” 
  12. HOME_URL=“http://www.ubuntu.com/” 
  13. SUPPORT_URL=“http://help.ubuntu.com/” 
  14. BUG_REPORT_URL=“http://bugs.launchpad.net/ubuntu/” 
x86_64
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=14.04
DISTRIB_CODENAME=trusty
DISTRIB_DESCRIPTION="Ubuntu 14.04.2 LTS"
NAME="Ubuntu"
VERSION="14.04.2 LTS, Trusty Tahr"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 14.04.2 LTS"
VERSION_ID="14.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"

 2.2.3)验证系统中是否已经安装gcc,因为需要用gcc来编译CUDA和Caffe

命令:

  1. gcc –version
gcc --version

 2.2.4)NVIDIA和CUDA安装(*.run)

安装之前请进行md5sum检验,确保安装包完整检验命令为:md5sum 文件名,查看输出的md5sum是否跟你有的相同。

该方法以 CUDA6.5 为例。

2.2.4.1)首先下载 对应系统的 离线CUDA安装包   (*.run) 链接:https://developer.nvidia.com/cuda-toolkit

2.2.4.2)关闭桌面服务

进入Ubuntu, 按 Ctrl+Alt+F1  进入tty, 登录tty后输入如下命令:sudo service lightdm stop。

此命令会关闭lightdm服务,如果你使用的是gdm或者其他的桌面服务,请在安装NVIDIA显卡驱动前关闭它。

2.2.4.3关闭 Nouveau 开源驱动服务

Nouveau是一个开源的显卡驱动,Ubuntu 14.04 默认安装了,但是它会影响nVidia驱动的安装,启动时需要将这个驱动加入黑名单中。

1):修改nvidia-graphics-drivers.conf文件

  1. sudo vim /etc/modprobe.d/nvidia-graphics-drivers.conf 
sudo vim /etc/modprobe.d/nvidia-graphics-drivers.conf

写入:

  1. blacklist nouveau 
blacklist nouveau

保存并退出: 

  1. wq! 
wq!

检查:

  1. cat nvidia-graphics-drivers.conf 
cat nvidia-graphics-drivers.conf

2):修改grub文件

  1. sudo vim /etc/default/grub 

末尾写入:

  1. rdblacklist=nouveau nouveau.modeset=0
rdblacklist=nouveau nouveau.modeset=0

保存并退出: 

  1. wq! 
wq!

检查:

  1. cat /etc/default/grub
cat /etc/default/grub

 2.2.4.4)安装下载到的 CUDA离线包 (*.run)

1):安装 *.run文件,可以直接使用命令 sudo sh cuda_6.5.14_linux_64.run 一直aceept就行。

或者 

由于CUDA安装包中NVIDIA驱动的版本并不保证是最新的,也不一定适合你的计算机的显卡,所以建议使用下面这种方式分开安装,如果NVIDIA驱动版本和CUDA版本不对应的话,会导致CUDA安装失败,或者进入不了桌面服务。可以去NVIDIA官网 下载对应你的显卡的驱动的最新版,至少要高于CUDA安装包中自带的NVIDIA版本。

通过下列命令

  1. cuda_6.5.14_linux_64.run –extract=extract_path
cuda_6.5.14_linux_64.run --extract=extract_path

将下载得到的 *.run 文件解压成三个文件, 分别为

CUDA安装包: cuda-linux64-rel-6.5.14-18749181.run

NVIDIA安装包: NVIDIA-Linux-x86_64-340.65.run

CUDA Samples安装包:cuda-samples-linux-6.5.14-18745345.run

分别运行各个文件,运行前,需要将文件权限修改为可执行权限

命令:

  1. chmod +x *.run 
chmod +x *.run

2):安装CUDA

命令:

  1. sudo sh cuda-linux64-rel-6.5.14-18749181.run 
sudo sh cuda-linux64-rel-6.5.14-18749181.run

一直aceept就行,建议使用默认路径。

安装NVIDIA(如果没有NVIDIA显卡,可跳过该步骤,仍可使用Caffe的CPU模式)

命令:(不建议使用)

  1. sudo sh NVIDIA-Linux-x86_64-340.65.run
sudo sh NVIDIA-Linux-x86_64-340.65.run

一直aceept就行,建议使用默认路径。

3):建议方法(仅限于使用CUDA6.5,如果你需要使用更新的CUDA版本,请去NVIDIA官网 下载对应你的显卡的驱动的最新版,至少要高于CUDA安装包中自带的NVIDIA版本,然后单独安装显卡驱动。链接:http://www.nvidia.cn/Download/index.aspx?lang=cn)

1:添加驱动源

  1. sudo add-apt-repository ppa:xorg-edgers/ppa 
  2. sudo apt-get update
sudo add-apt-repository ppa:xorg-edgers/ppa
sudo apt-get update

 2:安装340版驱动 (CUDA 6.5.14目前最高仅支持340版驱动, 343, 346版驱动暂不支持)

  1. sudo apt-get install nvidia-340 
sudo apt-get install nvidia-340

3:安装完成后, 继续安装下列包 (否则在运行sample时会报错)

  1. sudo apt-get install nvidia-340-uvm
sudo apt-get install nvidia-340-uvm

4:安装完成后,最好重启计算机,让NVIDIA显卡工作

(2.2.4.5)安装CUDNN(可选)

1):下载 cudnn-6.5-linux-x64-v2 点击下载,然后执行以下命令安装

  1. tar -zxvf cudnn-6.5-linux-x64-v2.tgz   
  2. cd cudnn-6.5-linux-x64-v2   
  3. sudo cp lib* /usr/local/cuda-6.5/lib64/ 
  4. sudo cp cudnn.h /usr/local/cuda-6.5/include/
tar -zxvf cudnn-6.5-linux-x64-v2.tgz  
cd cudnn-6.5-linux-x64-v2  
sudo cp lib* /usr/local/cuda-6.5/lib64/
sudo cp cudnn.h /usr/local/cuda-6.5/include/

2):更新软连接

  1. cd /usr/local/cuda-6.5/lib64/ 
  2. sudo rm -rf libcudnn.so libcudnn.so.6.5 
  3. sudo ln -s libcudnn.so.6.5.48 libcudnn.so.6.5 
  4. sudo ln -s libcudnn.so.6.5 libcudnn.so

2.2.4.6)修改环境变量

1):在 /etc/profile 文件中添加以下内容:

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

命令:

  1. sudo vim /etc/profile 

2):使环境变量生效

命令:

  1. source /etc/profile
source /etc/profile

 2.2.4.7)添加lib库路径

1):在  /etc/ld.so.conf.d/  文件夹下添加 cuda.conf 文件,内容如下:

  1. /usr/local/cuda-6.5/lib64 

2):使库路径立即生效

  1. sudo ldconfig  [-v,可选] 

2.2.4.8)安装CUDA Samples

命令:

  1. sudo sh cuda-samples-linux-6.5.14-18745345.run 
sudo sh cuda-samples-linux-6.5.14-18745345.run

一直aceept就行,建议使用默认路径。

编译CUDA Samples

命令:

  1. cd /usr/local/cuda-6.5/samples 
  2. sudo make

编译完成后,进入路径:/samples/bin/x86_64/linux/release

运行命令:

  1. ./deviceQuery
./deviceQuery

输出:

  1. ./deviceQuery Starting… 
  2.  
  3.  CUDA Device Query (Runtime API) version (CUDART static linking) 
  4.  
  5. Detected 1 CUDA Capable device(s) 
  6.  
  7. Device 0: “Tesla K40c” 
  8.   CUDA Driver Version / Runtime Version          6.5 / 6.5 
  9.   CUDA Capability Major/Minor version number:    3.5 
  10.   Total amount of global memory:                 11520 MBytes (12079136768 bytes) 
  11.   (15) Multiprocessors, (192) CUDA Cores/MP:     2880 CUDA Cores 
  12.   GPU Clock rate:                                745 MHz (0.75 GHz) 
  13.   Memory Clock rate:                             3004 Mhz 
  14.   Memory Bus Width:                              384-bit 
  15.   L2 Cache Size:                                 1572864 bytes 
  16.   Maximum Texture Dimension Size (x,y,z)         1D=(65536), 2D=(65536, 65536), 3D=(4096, 4096, 4096) 
  17.   Maximum Layered 1D Texture Size, (num) layers  1D=(16384), 2048 layers 
  18.   Maximum Layered 2D Texture Size, (num) layers  2D=(16384, 16384), 2048 layers 
  19.   Total amount of constant memory:               65536 bytes 
  20.   Total amount of shared memory per block:       49152 bytes 
  21.   Total number of registers available per block: 65536 
  22.   Warp size:                                     32 
  23.   Maximum number of threads per multiprocessor:  2048 
  24.   Maximum number of threads per block:           1024 
  25.   Max dimension size of a thread block (x,y,z): (1024, 1024, 64) 
  26.   Max dimension size of a grid size    (x,y,z): (2147483647, 65535, 65535) 
  27.   Maximum memory pitch:                          2147483647 bytes 
  28.   Texture alignment:                             512 bytes 
  29.   Concurrent copy and kernel execution:          Yes with 2 copy engine(s) 
  30.   Run time limit on kernels:                     No 
  31.   Integrated GPU sharing Host Memory:            No 
  32.   Support host page-locked memory mapping:       Yes 
  33.   Alignment requirement for Surfaces:            Yes 
  34.   Device has ECC support:                        Enabled 
  35.   Device supports Unified Addressing (UVA):      Yes 
  36.   Device PCI Bus ID / PCI location ID:           1 / 0 
  37.   Compute Mode: 
  38.      < Default (multiple host threads can use ::cudaSetDevice() with device simultaneously) > 
  39.  
  40. deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 6.5, CUDA Runtime Version = 6.5, NumDevs = 1, Device0 = Tesla K40c 
  41. Result = PASS
./deviceQuery Starting...

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

Detected 1 CUDA Capable device(s)

Device 0: "Tesla K40c"
  CUDA Driver Version / Runtime Version          6.5 / 6.5
  CUDA Capability Major/Minor version number:    3.5
  Total amount of global memory:                 11520 MBytes (12079136768 bytes)
  (15) Multiprocessors, (192) CUDA Cores/MP:     2880 CUDA Cores
  GPU Clock rate:                                745 MHz (0.75 GHz)
  Memory Clock rate:                             3004 Mhz
  Memory Bus Width:                              384-bit
  L2 Cache Size:                                 1572864 bytes
  Maximum Texture Dimension Size (x,y,z)         1D=(65536), 2D=(65536, 65536), 3D=(4096, 4096, 4096)
  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: 65536
  Warp size:                                     32
  Maximum number of threads per multiprocessor:  2048
  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): (2147483647, 65535, 65535)
  Maximum memory pitch:                          2147483647 bytes
  Texture alignment:                             512 bytes
  Concurrent copy and kernel execution:          Yes with 2 copy engine(s)
  Run time limit on kernels:                     No
  Integrated GPU sharing Host Memory:            No
  Support host page-locked memory mapping:       Yes
  Alignment requirement for Surfaces:            Yes
  Device has ECC support:                        Enabled
  Device supports Unified Addressing (UVA):      Yes
  Device PCI Bus ID / PCI location ID:           1 / 0
  Compute 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 = Tesla K40c
Result = PASS

如果输出上述信息,恭喜你,NVIDIA和CUDA安装成功,则可以继续进行下一步安装Caffe环境。

2.2.4.9)验证NVIDIA 驱动和CUDA是否安装成功

查看安装NVIDIA驱动版本 命令:

cat /proc/driver/nvidia/version 

输出

  1. NVRM version: NVIDIA UNIX x86_64 Kernel Module  340.96  Sun Nov  8 22:33:28 PST 2015 
  2. GCC version:  gcc version 4.7.3 (Ubuntu/Linaro 4.7.3-12ubuntu1) 

从输出信息可以看出NVIDIA驱动版本为 340.96

安装完成后,就可以重新启动桌面服务了。

命令:

  1. sudo start lightdm
sudo start lightdm

更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2016-12/138625p2.htm

第三部分:Caffe安装和测试

该部分主要安装Caffe相关工具

(一)安装MATLAB

假设matlab安装路径为:/usr/local/MATLAB/R2014b

matlab破解文件路径为/home/

1)挂载iso文件

把matlab的ISO文件挂载上去,需要注意的是:挂载上去之前,需要将iso文件中的Java/jar/install.jar文件替换为破解文件夹中的install.jar,可以使用UltraIso工具,替换保存后再使用文件挂载命令。为防止出现权限不够的问题,建议使用root用户。
文件挂载命令格式如下:
mount -o loop,rw /home/R2014b_glnxa64.iso /mnt
/mnt是你要挂载的文件夹目录,建议你自己新建一个文件夹。
2)安装matlab
进入解压后的matlab文件夹,运行 sudo ./install

选择”install manually without using the internet”项进行安装

输入”file installation key”:12345-67890-12345-67890(随便都行)

激活:选择对应的”license.lic”文件进行激活(在Crack文件夹下面)

3)破解matlab
rm -rf /usr/local/MATLAB/R2014b/bin/glnxa64/libmwservices.so
把crack文件下的so文件拷贝过来:
cp /home/libmwservices.so /usr/local/MATLAB/R2014b/bin/glnxa64/

4)安装成功,运行
/usr/local/MATLAB/R2014b/bin/matlab

5)配置环境变量,使得直接输入matlab即可启动软件
vi /etc/profile
在文件末尾添加
export PATH=/usr/local/MATLAB/R2014b/bin:$PATH
保存并退出后使设置生效
source /etc/profile

 

(二)安装Python

 

sudo apt-get install python-dev python-pip
安装Python依赖包

sudo apt-get install python-numpy python-scipy python-matplotlib ipython ipython-notebook python-pandas python-sympy python-nose 
python-sklearn python-skimage python-h5py python-protobuf python-leveldb python-networkx

 

(三)安装Intel MKL或者ATLAS

如果没有申请到Intel MKL,可以使用以下命令安装免费的ATLAS

  1. sudo apt-get install libatlas-base-dev 
sudo apt-get install libatlas-base-dev

如果申请到了MKL,解压下载到的文件,运行install_GUI.sh,然后按照图形界面步骤安装即可。

安装完成后,需要执行下列两个步骤:

1):在  /etc/ld.so.conf.d/  文件夹下添加 intel_mkl.conf文件,内容如下:

  1. /opt/intel/lib 
  2. /opt/intel/mkl/lib/intel64 

2):使库路径立即生效

  1. sudo ldconfig  [-v,可选] 
sudo ldconfig  [-v,可选]

 (四)安装OpenCV(该选项【可选】)
安装2.4.10
1)下载安装脚本
2)进入目录 Install-OpenCV/Ubuntu/2.4
3)执行脚本
chmod +x *.sh
sh ./opencv2_4_10.sh 

(五)编译Caffe

1)下载Caffe源码包  Caffe源码包

2)进入caffe-master文件夹目录,复制一份 Makefile.config.examples

cp Makefile.config.example Makefile.config

3)修改Makefile.config文件中相关路径

  1. ## Refer to http://caffe.berkeleyvision.org/installation.html 
  2. # Contributions simplifying and improving our build system are welcome! 
  3.  
  4. # cuDNN acceleration switch (uncomment to build with cuDNN). 
  5. # USE_CUDNN :1 
  6.  
  7. # CPU-only switch (uncomment to build without GPU support). 
  8. # CPU_ONLY :1 
  9.  
  10. # uncomment to disable IO dependencies and corresponding data layers 
  11. # USE_OPENCV :0 
  12. # USE_LEVELDB :0 
  13. # USE_LMDB :0 
  14.  
  15. # uncomment to allow MDB_NOLOCK when reading LMDB files (only if necessary) 
  16. #   You should not set this flag if you will be reading LMDBs with any 
  17. #   possibility of simultaneous read and write 
  18. # ALLOW_LMDB_NOLOCK :1 
  19.  
  20. # Uncomment if you’re using OpenCV 3 
  21. # OPENCV_VERSION :3 
  22.  
  23. # To customize your choice of compiler, uncomment and set the following. 
  24. # N.B. the default for Linux is g++ and the default for OSX is clang++ 
  25. # CUSTOM_CXX :g++ 
  26.  
  27. # CUDA directory contains bin/ and lib/ directories that we need. 
  1. #CUDA的安装目录 
  2. CUDA_DIR := /usr/local/cuda 
  3. # On Ubuntu 14.04, if cuda tools are installed via 
  4. # “sudo apt-get install nvidia-cuda-toolkit” then use this instead: 
  5. # CUDA_DIR := /usr 
  6.  
  7. # CUDA architecture setting: going with all of them. 
  8. # For CUDA < 6.0, comment the *_50 lines for compatibility. 
  9. CUDA_ARCH := -gencode arch=compute_20,code=sm_20 \ 
  10.         -gencode arch=compute_20,code=sm_21 \ 
  11.         -gencode arch=compute_30,code=sm_30 \ 
  12.         -gencode arch=compute_35,code=sm_35 \ 
  13.         -gencode arch=compute_50,code=sm_50 \ 
  14.         -gencode arch=compute_50,code=compute_50 
  15.  
  16. # BLAS choice: 
  17. # atlas for ATLAS (default) 
  18. # mkl for MKL 
  19. # open for OpenBlas 
  20. BLAS :atlas 
  21. # Custom (MKL/ATLAS/OpenBLAS) include and lib directories. 
  22. # Leave commented to accept the defaults for your choice of BLAS 
  23. # (which should work)! 
  24. # BLAS_INCLUDE := /path/to/your/blas 
  25. # BLAS_LIB := /path/to/your/blas 
  26.  
  27. # Homebrew puts openblas in a directory that is not on the standard search path 
  28. # BLAS_INCLUDE := $(shell brew –prefix openblas)/include 
  29. # BLAS_LIB := $(shell brew –prefix openblas)/lib 
  30.  
  31. # This is required only if you will compile the matlab interface. 
  32. # MATLAB directory should contain the mex binary in /bin. 
  1. #MATLAB的安装目录 
#MATLAB的安装目录

# MATLAB_DIR := /usr/local

# MATLAB_DIR := /Applications/MATLAB_R2012b.app

# NOTE: this is required only if you will compile the python interface.

# We need to be able to find Python.h and numpy/arrayobject.h.

  1. #PYTHON的安装目录 
  1. PYTHON_INCLUDE := /usr/include/python2.7 \ 
  2.         /usr/lib/python2.7/dist-packages/numpy/core/include 
  3. # Anaconda Python distribution is quite popular. Include path: 
  4. # Verify anaconda location, sometimes it’s in root. 
  5. # ANACONDA_HOME := $(HOME)/anaconda 
  6. # PYTHON_INCLUDE := $(ANACONDA_HOME)/include \ 
  7.         # $(ANACONDA_HOME)/include/python2.7 \ 
  8.         # $(ANACONDA_HOME)/lib/python2.7/site-packages/numpy/core/include \ 
  9.  
  10. # Uncomment to use Python 3 (default is Python 2) 
  11. # PYTHON_LIBRARIES :boost_python3 python3.5m 
  12. # PYTHON_INCLUDE := /usr/include/python3.5m \ 
  13. #                 /usr/lib/python3.5/dist-packages/numpy/core/include 
  14.  
  15. # We need to be able to find libpythonX.X.so or .dylib. 
  16. PYTHON_LIB := /usr/lib 
  17. # PYTHON_LIB := $(ANACONDA_HOME)/lib 
  18.  
  19. # Homebrew installs numpy in a non standard path (keg only) 
  20. # PYTHON_INCLUDE += $(dir $(shell python -c ‘import numpy.core; print(numpy.core.__file__)’))/include 
  21. # PYTHON_LIB += $(shell brew –prefix numpy)/lib 
  22.  
  23. # Uncomment to support layers written in Python (will link against Python libs) 
  24. # WITH_PYTHON_LAYER :1 
  25.  
  26. # Whatever else you find you need goes here. 
  27. INCLUDE_DIRS := $(PYTHON_INCLUDE) /usr/local/include 
  28. LIBRARY_DIRS := $(PYTHON_LIB) /usr/local/lib /usr/lib 
  29.  
  30. # If Homebrew is installed at a non standard location (for example your home directory) and you use it for general dependencies 
  31. # INCLUDE_DIRS += $(shell brew –prefix)/include 
  32. # LIBRARY_DIRS += $(shell brew –prefix)/lib 
  33.  
  34. # Uncomment to use `pkg-config` to specify OpenCV library paths. 
  35. # (Usually not necessary — OpenCV libraries are normally installed in one of the above $LIBRARY_DIRS.) 
  36. # USE_PKG_CONFIG :1 
  37.  
  38. BUILD_DIR :build 
  39. DISTRIBUTE_DIR :distribute 
  40.  
  41. # Uncomment for debugging. Does not work on OSX due to https://github.com/BVLC/caffe/issues/171 
  42. # DEBUG :1 
  43.  
  44. # The ID of the GPU that ‘make runtest’ will use to run unit tests. 
  45. TEST_GPUID :0 
  46.  
  47. # enable pretty build (comment to see full commands) 
  48. Q ?= @  

4)编译Caffe

make all -j4 

make test  

make runtest

5)编译Matlab接口

make matcaffe

6)编译Python接口

make  pycaffe

至此,就可以学着运行Caffe中的Demo了。

如果你的机器没有可用的NVIDIA显卡,仍然可以使用Caffe,可以配置Caffe的CPU(无GPU)模式,在整个安装过程中,请跳过【二部分:NVIDIA 驱动和CUDA 安装】,其他部分保持不变进行操作。

按照该教程在安装的过程中,有什么问题,欢迎在评论区留言,共同进步。

期待着NVIDIA将Caffe,Digits等一系列深度学习工具包集成到CUDA中吧,直接一键安装,相信美好的事情即将发生。

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-12/138625.htm

赞(0) 打赏
转载请注明出处:服务器评测 » Ubuntu 14.04 64bit下Caffe + Cuda6.5/Cuda7.0 安装配置教程
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏