1. 前言

本教程使用的系统是Ubuntu 14.04 LTS 64-bit,使用的CUDA版本为8。

理论上本教程支持Pascal架构显卡,如游戏卡GeForce GTX1070,GTX 1080,新Titan X;以及刚刚推出的计算卡Tesla P100。

如果你在安装时使用计算卡进行GPU加速,而用于显示的显卡不是NVIDIA显卡,则可能导致因为安装NVIDIA驱动时自动加载X Server配置而无法启动图形界面。这时可以使用服务器版的Ubuntu,或者换用CentOS等。

2. 安装基础依赖项

sudo apt-get install build-essential
sudo apt-get install cmake git

3. 安装CUDA

首先需要关闭图形界面。

使用Ctrl+Alt+F1进入虚拟控制台,然后输入用户名和密码登陆。然后关闭lightdm:

sudo /etc/init.d/lightdm stop

CUDA 8需要注册Accelerated Computing Developer Program,然后可以免费下载。

在如下地址进行注册和下载:

点击这里

下载完成后,前往指定的目录,然后执行:

sudo dpkg -i cuda-repo-ubuntu1404-8-0-rc_8.0.27-1_amd64.deb
sudo apt-get update
sudo apt-get install cuda

安装完成后,重启电脑:

sudo reboot

之后打开Terminal,添加环境变量。使用gedit打开如下文档:

sudo gedit /etc/profile

在文件末尾添加:

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

保存完成后,执行如下命令使环境变量立即生效:

source /etc/profile

然后还需要添加lib的路径:

sudo gedit /etc/ld.so.conf.d/cuda.conf

在文件中写入如下内容然后保存:

/usr/local/cuda/lib64

之后执行如下命令使之生效:

sudo ldconfig

执行完了这些操作之后,还可以安装CUDA SAMPLES来检测CUDA是否运行正常,鉴于这不是CUDA编程教程,本教程暂不介绍。

4. 安装其他的一些依赖项

sudo apt-get install freeglut3-dev libx11-dev libxmu-dev libxi-dev libglu1-mesa-dev
sudo apt-get install 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
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

PS:复制粘贴太长的命令可以能因为浏览器的原因导致输入了多余的换行符,如果复制粘贴带有换行符的命令进Terminal,会被当做两条命令来执行,一定要注意这一点。

5. 安装ATLAS

本步骤可以用OpenBLAS或者Intel MKL替代。我在E5-2690v2+GTX780的平台上测试过这三种库,性能相差无几,这里就介绍其中一种:

sudo apt-get install libatlas-base-dev

然后自动安装完成即可。

目前intel MKL是收费软件,OpenBLAS可以免费下载和安装。如果使用这两种库,编译Caffe时要在Makefile.config做出对应的修改。

6.下载Caffe

从GitHub上直接下载Caffe的最新版

git clone https://github.com/BVLC/caffe.git

也可以从Caffe的GitHub工程中下载Caffe的历史版本:

https://github.com/BVLC/caffe

7. 安装Python

先安装相关依赖项

sudo apt-get install python-dev python-pip

转到下载的caffe的目录下,然后转到python目录下

cd python

执行如下命令:

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

等待其自动安装即可。

8. 编译Caffe

在caffe目录下,执行:

cp Makefile.config.example Makefile.config

然后打开Makefile.config,根据自己的需要修改相关参数。

进行编译:

make all -j10
make test
make runtest

PS:-j10指10线程同时编译,根据自己CPU的特点调整该参数,如果不了解自己CPU,直接执行make即可。

然后可以根据需求编译pycaffe:

make pycaffe

然后caffe就安装结束了。

9. 运行minist demo

转到 Caffe 目录下

sh data/mnist/get_mnist.sh
sh examples/mnist/create_mnist.sh
sh examples/mnist/train_lenet.sh

如果运行正常,caffe就可以正常工作了。

如需配置MATLAB和cuDNN,可以参考这篇教程:点击这里

本教程编写参考了如下教程,特此鸣谢:http://www.cnblogs.com/platero/p/3993877.html

Caffe的官方网站是 http://caffe.berkeleyvision.org/

如果有任何问题可以联系我:yaoyaoliu AT outlook.com

最近更新于2016-09-10 22:17:22

Caffe Ubuntu14.04 + CUDA 8 (支持GTX1080 1070等Pascal架构显卡)的更多相关文章

  1. Caffe+Ubuntu14.04+CUDA7.5 环境搭建(新人向)指南

    序 本文针对想学习使用caffe框架的纯新手,如果文中有错误欢迎大家指出. 由于我在搭建这个环境的时候参考了许多网上的教程,但是没有截图,所以文中图片大多来源于网络. 本文没有安装matlab的步骤, ...

  2. Ubuntu14.04+cuda 7.5+cudnn_v4+tensorflow安装

    系统环境:Ubuntu14.04 64位.Windows7 64位 双系统 CUDA 版本: 7.5 总结一下,我的安装建议是: 一定要下一份CUDA官方的安装文档,按照它的步骤一步步慢慢来,不可偷懒 ...

  3. Caffe Ubuntu14.04 64位 的最快安装 (cuda7.5 + cudnn7.0 2016最新)

    最近因为各种原因,装过不少次Caffe,安装过程很多坑,为节省新手的时间,特此总结整个安装流程. 关于Ubuntu 版本的选择,建议用14.04这个比较稳定的版本,但是千万不要用麒麟版!!!比原版体验 ...

  4. caffe+Ubuntu14.04.10 +cuda7.0/7.5+CuDNNv4 安装

    特别说明: Caffe 官网地址:http://caffe.berkeleyvision.org/ 本文为作者亲自实验完成,但仅限用于学术交流使用,使用本指南造成的任何不良后果由使用者自行承担,与本文 ...

  5. [Caffe] ubuntu14.04下使用OpenBLAS加速Caffe

    一.apt安装 sudo apt-get install libopenblas-dev 二.手动从source安装 1. 下载OpenBLAS并编译 git clone https://github ...

  6. Ubuntu14.04配置Apache支持多个站点

    怎样在一个Ubuntu的机器上(虚拟机)配置Apache支持多个网站呢? 比如你有一台独立的Ubuntu虚拟机,配有一个外网的IP(45.46.47.48),并且注册了两个域名AAA.com和BBB. ...

  7. ubuntu14.04下编译支持opengl的opencv

    在学习基于opencv的AR时,编译程序遇到报错,发现opencv不支持opengl.网上原因得知,在编译opencv时,opencv2.4以后的版本中默认ENABLE_OPENGL = NO,只需要 ...

  8. Caffe配置简明教程 ( Ubuntu 14.04 / CUDA 7.5 / cuDNN 5.1 )

    1. 前言 本教程使用的系统是Ubuntu 14.04 LTS 64-bit,使用的CUDA版本为7.5,使用的NVIDIA驱动版本为352. 如果您使用的Pascal架构显卡,如GTX1080或者新 ...

  9. Ubuntu14.04 caffe 配置

    1.前置条件验证 (1) Ubuntu14.04操作系统. (2) 检验计算机是否为NVIDIA显卡,终端输入命令 $ lspci | grep -invidia  (3) 检验计算机是否为x86_6 ...

随机推荐

  1. Vulkan SDK之 CommandBuff

    Basic Command Buffer Operation 调用指定的api, 驱动将命令放入指定的buff当中. 在其他图形API(dx,or opengl) ,glsetlinewidth驱动会 ...

  2. tortoiseGit 的简单使用说明

    拉取仓库到本地 参考 下面几张图片,把仓库拉取到本地. 本地修改并推送 进入文件夹后,按照 下面几张图片切换到本地的开发分支 当修改完成之后,按照 下面几张图片 的方法把修改推送到远程仓库的开发分支. ...

  3. SASS - 输出格式

    SASS – 简介 SASS – 环境搭建 SASS – 使用Sass程序 SASS – 语法 SASS – 变量 SASS- 局部文件(Partial) SASS – 混合(Mixin) SASS ...

  4. java课程之团队开发冲刺阶段1.10

    一.总结昨天任务: 1.已完成系统规划总结 二.遇到的问题: 1,整合的过程中并没有的很好的处理其中的关系,应当将常用的方法总结成一个工具类便于使用.这样在二次使用的时候会便捷不少. 三.今天的任务 ...

  5. request对象和response对象的作用和相关方法

    response对象(响应) 响应行 状态码 :setStatus(int a) 设置状态码 302重定向 304控制缓存 响应头 setHeader() 一个key对应一个value addHead ...

  6. JavaScript之递归

    什么是递归? 程序调用自身的编程技巧称为递归( recursion).递归策略只需少量的程序就可描述出解题过程所需要的多次重复计算,大大地减少了程序的代码量 . 递归的能力在于用有限的语句来定义对象的 ...

  7. Vue-router(4)之路由跳转

    路由传参 案例:现在需要展示一个电影列表页,点击每一部电影,会跳转到该部电影详情页(跳转时携带type和id) 代码实现(未携带type): index.js import Vue from 'vue ...

  8. 吴裕雄--天生自然 JAVASCRIPT开发学习:Date(日期) 对象

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  9. tensorflow 分布式训练

    TF实现分布式流程 1.创建集群 ClusterSpec & Server cluster = tf.train.ClusterSpec({"ps": ps_hosts, ...

  10. 运行roscore出现unable to contact my own server无法启动小海龟的部分故障问题解决

    运行roscore后,出现下图这种情况(unable to contact my own server) 原因是找不到http://后面那些,ping不到域名或IP. 参考http://www.ros ...