最近购置了一个二手的1080ti显卡,打算自己在家搭建一个深度学习训练环境。网上看了很多教程,在这里也感谢大家的分享。本文所用到的安装包都在百度云中,需要的自己下载:

链接:https://pan.baidu.com/s/1dXTlgx7TC6Jhj7E0J07ECA?pwd=s609 
提取码:s609

--来自百度网盘超级会员V2的分享

安装大致有四个步骤:

1.安装显卡驱动。

2.安装CUDA

3.安装cudnn

4.安装opencv

5.编译caffe

一.安装显卡驱动:

安装NVIDIA显卡驱动本文提供两种安装方式,一种是采用系统适配显卡驱动的方式,另一种是通过命令行的方式通过ppa来安装,这里推荐使用第一种安装方式,因为他简单而且不容易出错。如果第一种方式行不通再使用第二种方法,如果您的显卡不是GF1080Ti请先去NVIDIA官方网站查看自己的显卡驱动型号再来操作安装,也就是说384的驱动版本不一定适合您,请一定注意。无论采取哪种方式请一定要保证电脑能正常连接外网,因为期间需要外网来下载驱动。

①、采用系统适配显卡驱动的方式

打开设置,找到软件和更新,再找到附加驱动这一栏,如下图所示。

等系统搜索一会,出来结果后点击专有驱动这一项,再点击应用更改即可。

输入以下指令进行验证:

 nvidia-smi

若列出了GPU的信息列表则表示驱动安装成功。如下图所示。

②、通过命令行的方式安装显卡驱动

安装显卡驱动的大致流程为:进入命令行终端 --> 禁用lightdm桌面服务 --> 安装驱动 --> 启用lightdm桌面服务 --> 重启进入BIOS关闭secure boot --> 重启电脑

注意:Ubuntu系统集成的显卡驱动程序是nouveau,我们需要先将nouveau从linux内核卸载掉才能安装NVIDIA官方驱动

通过lsmod命令查看,确认nouveau是否已经被屏蔽掉。

lsmod | grep nouveau

若执行命令后无任何输出证明 nouveau禁用成功,如有输出,则证明nouveau没有被禁用,需要大家自行百度,将nouveau加入到黑名单中,由于这里我的已经禁用成功不需要多余的操作,所以就没有整理。
安装步骤:

1、禁用nouveau;

2、键盘上按下 ctrl + alt + F1,进入命令行模式。ubuntu有命令行模式和X桌面模式,安装驱动必须在命令行模式进行;

3、禁用X桌面服务,命令行输入:

sudo service lightdm stop

,此命令将关闭桌面服务,现在已经不能进入桌面模式(重启电脑会重启桌面服务)。

4、添加ppa库,通过ppa安装显卡驱动,注意不要从NVIDIA官网下载显卡驱动,直接通过ppa安装即可:

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
sudo apt-get install nvidia-384

由于本机显卡为GTX 1080Ti,截止到2018年4月15日,该显卡最新版驱动版本为390,但是在Ubuntu下安装384还是比较稳定的,因此安装nvidia-384驱动。

5、重启X桌面服务,命令行输入:

sudo service lightdm start

6、在终端中输入nvidia-smi,若有输出则证明驱动安装成功,若无输出则证明安装失败。

二.安装cuda8.0

首先在官网 CUDA Toolkit Archive | NVIDIA Developer 下载cuda8.0

下载完后执行以下命令:

sudo chmod 777 cuda_8.0.61_375.26_linux.run  #给用户增加读写和执行的权限
sudo  ./cuda_8.0.61_375.26_linux.run

执行上述命令约1分钟后会出现 0%信息,此时长按回车键让此百分比增长,直到100%,然后按照提示操作即可,先输入 accept ,然后让选择是否安装 nvidia 驱动,这里因为已经安装过显卡驱动就不能再重复安装,所以输入“n”不安装。剩下的选择则都输入“y”确认安装或确认默认路径安装,开始安装,如下图所示。

3、环境变量配置

打开~/.bashrc文件:

sudo gedit ~/.bashrc
将以下内容写入到~/.bashrc尾部:export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

使该配置生效:一定要执行啊 ,如果同时打开多个终端,执行过后,重新打开,否则后面的错误也是不断的.

source ~/.bashrc

在/etc/profile文件中添加CUDA环境变量:

sudo gedit /etc/profile

打开文档都在文档结尾加上下面两句:

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

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

source /etc/profile

同时添加lib库路径,在 /etc/ld.so.conf.d/新建文件 cuda.conf

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

在文中加入下面内容:

/usr/local/cuda/lib64

执行下列命令使之立刻生效:

sudo ldconfig

4、执行以下命令测试cuda是否安装成功

cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery
sudo make
sudo ./deviceQuery

三。安装cudnn

去官网下载cudnn5.  cuDNN Archive | NVIDIA Developer

2、下载完成之后进入下载目录(将下载的安装包拷贝到home文件夹下),执行以下命令进行解压:

sudo tar -zxvf ./cudnn-8.0-linux-x64-v5.1.tgz

解压之后,得到一个 cudn 文件夹,该文件夹下include 和 lib64 两个文件夹,命令行进入 cudn/include 路径下,然后进行以下操作:

cd cuda/include
sudo cp cudnn.h /usr/local/cuda/include  #复制头文件

再将进入lib64目录下的动态文件进行复制和链接:

cd ..
cd lib64
sudo cp lib* /usr/local/cuda/lib64/    #复制动态链接库
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.5    #删除原有动态文件
sudo ln -s libcudnn.so.5.0.5 libcudnn.so.5  #生成软衔接
sudo ln -s libcudnn.so.5 libcudnn.so      #生成软链接

3、安装完成后可用 nvcc -V 命令验证是否安装成功,若出现以下信息则表示安装成功:

~$ nvcc -V
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2016 NVIDIA Corporation
Built on Tue_Jan_10_13:22:03_CST_2017
Cuda compilation tools, release 8.0, V8.0.61

四。安装opencv

1、进入官网 : http://opencv.org/releases.html , 选择 3.1.0 版本的 source , 下载 opencv-3.1.0.zip

2、下载之后将文件拷贝到home文件夹下,并将其解压。

unzip opencv-3.1.0.zip

3、命令行进入已解压的文件夹 opencv-3.1.0 目录下,并执行下列命令。

cd ~/opencv-3.1.0

#安装前准备,创建编译文件夹:

mkdir build # 创建编译的文件目录
cd build

#配置:

安装依赖包:

sudo apt-get install build-essentialsudo apt-get install cmakesudo apt-get install libgtk2.0-devsudo apt-get install pkg-configsudo apt-get install python-dev python-numpysudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev
sudo cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..

#编译:

sudo make -j16 

4、在执行 sudo make -j16 命令编译到 93% 时可能会出现以下错误:

这是因为opecv3.0与cuda8.0不兼容导致的。解决办法:修改 ~/opencv/modules/cudalegacy/src/graphcuts.cpp文件内容

#if !defined (HAVE_CUDA) || defined (CUDA_DISABLER)||(CUDART_VERSION>=8000)

以上只是将opencv编译成功,还没将opencv安装,需要运行下面指令进行安装:

sudo make install

5、安装完成后通过查看 opencv 版本验证是否安装成功:

pkg-config --modversion opencv 

最后一步:编译caffe.

a、 安装相关依赖包

sudo 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
sudo apt-get install libopenblas-dev liblapack-dev libatlas-base-dev
sudo apt-get install libgflags-dev libgoogle-glog-dev liblmdb-dev
sudo apt-get install git cmake build-essential

b、在我们要安装的路径下 clone ,一般默认会安装在home文件加下,文件夹名称为caffe。

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

进入 caffe ,将 Makefile.config.example 文件复制一份并更名为 Makefile.config ,也可以在 caffe 目录下直接调用以下命令完成复制操作 :

cd caffe
sudo cp Makefile.config.example Makefile.config

复制一份的原因是编译 caffe 时需要的是 Makefile.config 文件,而Makefile.config.example 只是caffe 给出的配置文件例子,不能用来编译 caffe。

然后修改 Makefile.config 文件,在 caffe 目录下打开该文件:

sudo gedit Makefile.config

修改 Makefile.config 文件内容:

(1)应用 cudnn

将
#USE_CUDNN := 1
修改成:
USE_CUDNN := 1

(2)应用 opencv 且版本是3的

将
#OPENCV_VERSION := 3
修改为:
OPENCV_VERSION := 3

(3)使用python来编写layer

将
#WITH_PYTHON_LAYER := 1
修改为
WITH_PYTHON_LAYER := 1

(4)实现caffe对Python和Matlab接口的支持(可不修改,因为我没有用matlab,所以我没改)

PYTHON_LIB := /usr/lib
MATLAB_DIR := /usr/local/MATLAB/R2015b #注意:将Matlab修改成对应的版本

(5)修改 python 路径(重要)

#Whatever else you find you need goes here. 下面的INCLUDE_DIRS:= $(PYTHON_INCLUDE) /usr/local/includeLIBRARY_DIRS:= $(PYTHON_LIB) /usr/local/lib /usr/lib修改为:INCLUDE_DIRS:= $(PYTHON_INCLUDE) /usr/local/include /usr/include/hdf5/serialLIBRARY_DIRS:= $(PYTHON_LIB) /usr/local/lib /usr/lib /usr/lib/x86_64-linux-gnu /usr/lib/x86_64-linux-gnu/hdf5/serial

注:如果使用的是CUDA版本是8.0,从CUDA 8.0开始compute capability 2.0和2.1被弃用了,所以可以将-gencode arch=compute_20,code=sm_20 和-gencode arch=compute_20,code=sm_21这两行删除。如下


CUDA_ARCH := -gencode arch=compute_30,code=sm_30 \-gencode arch=compute_35,code=sm_35 \-gencode arch=compute_50,code=sm_50 \-gencode arch=compute_52,code=sm_52 \-gencode arch=compute_60,code=sm_60 \-gencode arch=compute_61,code=sm_61 \-gencode arch=compute_61,code=compute_61

这里贴出我的Makefile.config文件 方便大家参考

然后修改 caffe 目录下的 Makefile 文件:

将:
NVCCFLAGS +=-ccbin=$(CXX) -Xcompiler-fPIC $(COMMON_FLAGS)
替换为:
NVCCFLAGS += -D_FORCE_INLINES -ccbin=$(CXX) -Xcompiler -fPIC $(COMMON_FLAGS)
将:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_hl hdf5
改为:
LIBRARIES += glog gflags protobuf boost_system boost_filesystem m hdf5_serial_hl hdf5_serial

这里贴出我的Makefile文件 方便大家参考

然后修改 /usr/local/cuda/include/host_config.h 文件 :

将
#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!
改为
//#error-- unsupported GNU version! gcc versions later than 4.9 are not supported!

c、接下来开始编译,如果前面的配置或安装出错,那么编译就会出现各种各样的问题,所以前面的步骤一定要细心。

make all -j8  #-j8根据自己电脑配置决定
make test -j8
sudo make runtest -j8 #测试

如果运行之后出现如图所示结果,说明caffe配置成功。

d、安装python接口

首先回到caffe的根目录,然后执行安装代码:注意你的pip版本号,如果版本比较低的话安装这些依赖包的话是不成功的,所以要升级pip,我最开始是8.1.0后面神升级到了20.2.4,由于unbuntu16.04无法自动升级pip版本,所以可以从官网上下载源码然后进行安装。

cd ~/caffe
sudo apt-get install gfortran
cd ./python
for req in $(cat requirements.txt); do pip install $req; done

安装完成以后,再次回到caffe根目录我们可以执行:

cd ..
sudo pip install -r python/requirements.txt
编译python接口:make pycaffe

配置环境变量,以便python调用:

sudo gedit ~/.bashrc
将export PYTHONPATH=/home/caffe/python:$PYTHONPATH添加到文件中source ~/.bashrc #更新文件

编译 pycaffe 成功后,验证一下是否可以在 python 中导入 caffe 包,首先进入 python 环境:

python
然后导入 caffe :>>> import caffe

无报错就是安装成功了。

参考博客:

Ubuntu16.04配置caffe(GPU)详细教程_QLULIBIN的博客-CSDN博客

ubuntu16.04 gtx1080ti 安装caffe gpu版本相关推荐

  1. 通过Anaconda在Ubuntu16.04上安装 TensorFlow(GPU版本)

    一. 安装环境 Ubuntu16.04.3 LST GPU: GeForce GTX1070 Python: 3.5 CUDA Toolkit 8.0 GA1 (Sept 2016) cuDNN v6 ...

  2. Ubuntu16.04.1安装Caffe(GPU)

    Caffe的优势: 1.上手快:模型与相应优化均以文本形式而非代码形式给出,caffe给出了模型的定义,最优化设置以及预训练的权重 2.速度快:与CuDNN结合使用,测试AlexNet模型,在K40上 ...

  3. ubuntu16.04下安装TensorFlow(GPU加速)----详细图文教程【转】

    本文转载自:https://blog.csdn.net/zhaoyu106/article/details/52793183 le/details/52793183 写在前面 一些废话 接触深度学习已 ...

  4. ubuntu16.04下安装TensorFlow(GPU加速)----详细图文教程

    文章来源:http://www.datacups.com/post/1 软件: ubuntu16.04+cuda8.0+cudnn v5+tensorflow 0.11 1. 下载 1.1 系统镜像 ...

  5. ubuntu 16.04 安装Caffe GPU版本

    安装nvidia显卡驱动和CUDA8.0和cuDNN5请参考以下内容 http://blog.csdn.net/chenhaifeng2016/article/details/68957732 安装第 ...

  6. ubuntu16.04下安装opencv3.2版本

    1.下载OpenCV的源码 OpenCV官网上有linux版本的源码包可以下载,不过最好是从git上下载,这样可以保证下载得到的是最新的代码: 1 wget -O opencv.zip https:/ ...

  7. ubuntu16.04 gtx1080ti 安装pytorch

    最近想用pythorch训练yolo,所以搭建了一下pytorch的开发环境 pytorch安装虽然简单但是也是有很多坑的!首先我选择的是cuda9.0版本的,我的显卡驱动是nvida-384.130 ...

  8. Ubuntu 16.04下安装Caffe(GPU版本 GTX970)

    Ubuntu 16.04下安装Caffe(GPU版本 GTX970) 个人分类: Deep Learning 2018年8月6日更新说明:距上次安装成功没多久,显卡驱动莫名失效,没有解决,索性重装了系 ...

  9. Caffe学习笔记2--Ubuntu 14.04 64bit 安装Caffe(GPU版本)

    0.检查配置 1. VMWare上运行的Ubuntu,并不能支持真实的GPU(除了特定版本的VMWare和特定的GPU,要求条件严格,所以我在VMWare上搭建好了Caffe环境后,又重新在Windo ...

最新文章

  1. mysql如何查找某字段所在表
  2. 洛谷P1122 最大子树和 树形DP初步
  3. 消息推送生命周期_一套完整的APP推送体系方案|附思维导图
  4. android service 远程,android service(远程service) 知识点
  5. [Axios] axios的请求合并以及参数配置
  6. 【英语学习】【医学】无机化学 - 化合物命名(3) - 含氧酸/无氧酸
  7. 三星发布110寸大屏MicroLED面板电视
  8. Hexo NexT主题添加点击爱心效果
  9. leetcode- 225 Implement Stack using Queues
  10. 短期通过PMP考试?
  11. KEIL下载程序失败系列问题
  12. gwipr70驱动天空_win7 kmplayer plus设置_gwi pr2 pluswin7驱动_kmplayerplus官方下载
  13. python2.0下载_【Python for S60V2】Python for S60V2 V2.0官方免费下载_正式版下载-多特软件站...
  14. 宝塔的安全防范-服务器防火墙配置经验分享
  15. python得垃圾回收机机制gc
  16. CODING 敏捷实战系列课第三讲:可视化业务分析
  17. vmware虚拟机系统esxi不能识别不兼容网卡解决方案
  18. 小米米兔机器人的发展史_小米米兔机器人体验:童年的记忆汹涌而来
  19. 如何在电脑上pdf格式转换word格式
  20. qt linux phonon,如何使用 Qt Phonon(在网上找的,希望有人能用的着)

热门文章

  1. python的四则运算教案_python四则运算
  2. 自定义权限 android,android自定义权限
  3. 解题1953 World Cup Noise
  4. wep前端入门01_概念概述与HTML基础标签
  5. QFD(quality function deployment) HOQ (house of quality)使用指南swf文件
  6. 以科技赋能,跨越速运助推企业升级发展
  7. Pytorch详解NLLLoss和CrossEntropyLoss
  8. php面板 wpcd 集群,宝塔面板下WordPress使用WP Super Cache搭配Memcached加速完整教程
  9. java贪吃蛇小游戏(详解)
  10. gym.error.DependencyNotInstalled: Found neither the ffmpeg nor avconv executables.