Ubuntu16.04 + cuda9.0 + cudnn_v7 + tensorflow-gpu + opencv3.4.2

Ubuntu16.04 + cuda9.0 + cudnn_v7 + tensorflow-gpu + opencv3.4.2

版权声明:本文为博主原创文章,未经博主允许不得转载。https://blog.csdn.net/qq_26239525/article/details/82714116

先参考博客 ,配置基本的ubuntu环境:
ubuntu 16.04 系统安装、环境配置:https://blog.csdn.net/qq_26239525/article/details/82316493

系统环境:
Ubuntu系统:16.04
NVIDIA显卡:GeForce GTX TITAN X

安装过程:

1.安装依赖项

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

2.安装显卡驱动

打开系统设置->软件和更新->附加驱动:
在这里插入图片描述
选择第一个nvidia-384驱动,应用更改,安装完成之后,在终端输入:

nvidia-smi # 查看GPU和驱动程序信息,若显示GPU信息,则表示驱动安装成功

3.安装cuda9.0

cuda9.0下载地址:https://developer.nvidia.com/cuda-90-download-archive
在这里插入图片描述

按以上五个选项选择,然后将此文件下载下来。
终端输入:
sudo sh cuda_9.0.176_384.81_linux.run

安装过程中会执行一些确认信息,其中有一个更新驱动的选项,这个选择否。因为前边驱动我们已经正确安装。
等待安装完成,

配置环境变量:
sudo gedit ~/.bashrc

将以下内容写入到~/.bashrc尾部:
export PATH=/usr/local/cuda-9.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
 
在终端执行命令
source ~/.bashrc
让配置立即生效

测试CUDA的sammples:
cd /usr/local/cuda-9.0/samples/1_Utilities/deviceQuery #由自己电脑目录决定
sudo make
sudo ./deviceQuery

4.安装cudnn

https://developer.nvidia.com/rdp/cudnn-archive 下载cudnn(需要注册账号登录):

在这里插入图片描述

下载好cudnn-9.0-linux-x64-v7.tgz之后:

cd ~/下载
tar zxvf cudnn-9.0-linux-x64-v7.tgz
cd cuda/include/
sudo cp cudnn.h /usr/local/cuda/include/    #复制头文件

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

sudo cp lib* /usr/local/cuda/lib64/    #复制动态链接库
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.7    #删除原有动态文件
sudo ln -s libcudnn.so.7.0.5 libcudnn.so.7  #生成软衔接(注意这里要和自己下载的cudnn版本对应,可以在/usr/local/cuda/lib64下查看自己libcudnn的版本)
sudo ln -s libcudnn.so.7 libcudnn.so      #生成软链接

安装完成。

5.安装anaconda + tensorflow-gpu

下载anaconda:https://www.anaconda.com/download/#linuxpython

终端输入:
bash Anaconda3-5.2.0-Linux-x86_64.sh
然后执行安装:
安装完成后,终端输入:
anaconda-navigator
打开anaconda

如果报错没有此命令,需要添加路径:
(https://docs.anaconda.com/anaconda/faq#distribution-faq-linux-path)
打开anaconda,创建环境tensorflow-gpu:
安装包tensorflow-gpu版本,右键可以选择更改版本,这里我选择的是1.5.0版本。
等待安装完成后,可以安装vscode和jupyter软件。

测试一下,在python环境中输入:

import numpy
import tensorflow as tf
a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
c = tf.matmul(a, b)
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))
print(sess.run(c))

之后就会出现详细的信息:

Device mapping:
/job:localhost/replica:0/task:0/device:GPU:0 -> device: 0, name: Tesla K40c, pci bus
id: 0000:05:00.0
b: /job:localhost/replica:0/task:0/device:GPU:0
a: /job:localhost/replica:0/task:0/device:GPU:0
MatMul: /job:localhost/replica:0/task:0/device:GPU:0
[[ 22.  28.]
 [ 49.  64.]]
 
 就能看到是GPU在工作还是CPU再工作了。

6.安装opencv3.4.2

参考博客:Ubuntu16.04 + 源码编译OpenCV3.4.2

本文内容所参考的一些博客:

ubuntu 16.04 系统安装、环境配置:https://blog.csdn.net/qq_26239525/article/details/82316493
ubuntu16.04下安装CUDA cuDNN及tensorflow-gpu版本及caffe-gpu过程:https://blog.csdn.net/xinyuanjoe/article/details/78679884
确定自己的TensorFlow是CPU还是GPU的版本:https://blog.csdn.net/zlase/article/details/79261348

猜你喜欢

转载自blog.csdn.net/qq_26239525/article/details/82714116