欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Ubuntu14.04 安装cuda+cudnn+tensorflow+caffe2环境

程序员文章站 2022-03-17 07:54:50
...

一. 安装包准备

  • Ubuntu14.04系统
  • cuda8.0
  • cudnn6.0
  • tensorflow1.3
  • caffe2
  • *, chrome, sogoupinying, pycharm

二. 开始安装

2.1 安装nvidia 1080显卡驱动

本文主机使用的是GTX 1070显卡,可根据GPU型号到Nvidia官网下载相应的最新驱动

Ubuntu14.04 安装cuda+cudnn+tensorflow+caffe2环境

安装驱动过程需要关闭图像界面,使用Ctrl+Alt+F1进入字符界面终端, 输入如下命令:

 $ sudo apt-get install build-essential              # 安装c/c++编译环境
 $ sudo service lightdm stop                         # 关闭图形界面
 $ cd ~/Downloads/                                   # 进入存放驱动文件的目录
 $ sudo chmod +x NVIDIA-Linux-x86_64-384.69.run      # 给予文件可执行权限
 $ sudo ./NVIDIA-Linux-x86_64-384.69.run             # 开始安装

 ## 根据安装提示进行安装...
 $ sudo reboot                                       # 重启PC即可

重启PC后桌面分辨率变高,在lancher搜索nvidia出现NVIDIA X Server Settings应用(其他两个是在安装CUDA后才有):

Ubuntu14.04 安装cuda+cudnn+tensorflow+caffe2环境
可使用NVIDIA X Server Settings应用查看和设置GPU功能:

Ubuntu14.04 安装cuda+cudnn+tensorflow+caffe2环境

2.2 安装和测试cuda8.0

GTX1070和GTX1080显卡必须使用CUDA8.0以上的版本。到Nvidia CUDA官网下载最新的CUDA Toolkits安装包

Ubuntu14.04 安装cuda+cudnn+tensorflow+caffe2环境

PS: 此处有两种安装包(runfiledeb)可以选择。推荐使用runfile安装包,因为CUDA包本身就包含了显卡驱动,但不是最新的。如果使用deb包安装,它会在安装过程中自动覆盖步骤2.1安装的最新显卡驱动。使用runfile安装则可以选择不安装CUDA包自带的驱动。

打开Terminal输入以下命令:

$ cd /Dowloads/                                      # 进入存放cuda包的目录
$ sudo chmod +x cuda_8.0.61_375.26_linux.run         # 给予文件可执行权限
$ sudo ./cuda_8.0.61_375.26_linux.run

按步骤安装好cuda后,设置cuda环境变量:

$ vim(gedit) ~/.bashrc                               # 使用vim或gedit编辑.bashrc文件

# 在.basrch文件底部加入以下句后, 保存并退出
export CUDA_HOME=/usr/local/cuda-8.0
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

$ source ~/.bashrc                                   # 使文件配置生效

进行测试:

$ cd /usr/local/cuda-8.0/samples/1_Utilities/deviceQuery    # 进入存放cuda例子的目录
$ sudo make
$ sudo ./deviceQuery                                        # 执行测试程序

Ubuntu14.04 安装cuda+cudnn+tensorflow+caffe2环境

2.3 安装cudnn6.0

Tensorflow 和 Caffe2 的最新发行版本现都只支持cudnn6.0,还未支持最新的cudnn7.0。到Nvidia官网下载cudnn6.0安装包:(下载需要注册Nvidia开发者账号和填写一个问卷)

Ubuntu14.04 安装cuda+cudnn+tensorflow+caffe2环境

打开Terminal输入以下命令:

$ cd /Downloads/
$ tar -xvf cudnn-8.0-linux-x64-v6.0.tgz
$ sudo cp cuda/include/cudnn.h /usr/local/cuda-8.0/include
$ sudo cp cuda/lib64/libcudnn* /usr/local/cuda-8.0/lib64

# 安装 libcupti-dev 作为 NVIDIA CUDA Profile Tools Interface
$ sudo apt-get install libcupti-dev

到此Nvidia GPU环境配置完成。

2.4 安装和测试tensorflow

参考 tensorflow 官网安装教程有三种安装方式。本文采用 pip 直接将 tensorflow 安装到系统自带的 python2 中的方式。打开Terminal,输入以下命令:

$ sudo apt-get install python-pip python-dev    # 安装pip和python开发环境
$ sudo pip install --upgrade                    # 更新pip的版本
$ sudo pip install tensorflow-gpu               # 默认安装最新的1.3版本的tensorflow

$ sudo pip install ipython                      # 安装ipython,方便使用python终端做测试。
$ ipython                                       # 启动ipython

# 进入ipython环境后,输入以下测试代码
>> import tensorflow as tf                      # 导入tensorflow
>> const1 = tf.constant("hello tensorflow!")    # 定义一个常量tensor
>> sess = tf.Session()                          # 定义回话
>> sess.run(const1)                             # 执行

输出结果显示程序在GUP设备上运行:

Ubuntu14.04 安装cuda+cudnn+tensorflow+caffe2环境

2.5 安装和测试Caffe2

参考 caffe2 官方安装教程进行安装。相比于tensorflow的安装,caffe2就显得比较复杂和繁琐,需要安装大量依赖包。

打开Terminal,安装必须的依赖:

$ sudo apt-get install -y --no-install-recommends cmake git build-essential libgoogle-glog-dev libprotobuf-dev protobuf-compiler

$ sudo pip install numpy protobuf

安装可选依赖:

$ sudo apt-get install  -y --no-install-recommends \
                            libgflags2   \
                            libgtest-dev \
                            libiomp-dev \
                            libleveldb-dev \
                            liblmdb-dev \
                            libopencv-dev \
                            libopenmpi-dev \
                            libsnappy-dev \
                            openmpi-bin \
                            openmpi-doc \
                            python-pydot

$ sudo pip install  flask \
                        future \
                        graphviz \
                        hypothesis \
                        jupyter \
                        matplotlib \
                        pydot python-nvd3 \
                        pyyaml \
                        requests \
                        scikit-image \
                        scipy \
                        setuptools \
                        six \
                        tornado

下载源代码,编译和安装:

$ mkdir Caffe2 && cd Caffe2                     # 创建存放Caffe2源码的目录
$ git init                                      # 初始化该目录为git仓库
$ git clone --recursive https://github.com/caffe2/caffe2.git && cd caffe2

$ mkdir build && cd build                       # 创建存放编译文件的目录
$ cmake ..
$ make -j4                                      # 启动4线程进行编译
$ sudo make install                             # 安装

测试 caffe2 安装环境:

$ python -c 'from caffe2.python import core' 2>/dev/null && echo "Success" || echo "Failure"                                                      # 输出Success则安装成功

$ python -m caffe2.python.operator_test.relu_op_test    # 测试caffe2程序能否在GPU上正常运行

Ubuntu14.04 安装cuda+cudnn+tensorflow+caffe2环境

设置 caffe2 环境变量:

# 打开/etc/bash.bashrc, 加入以下行(全局配置):
# set the caffe2 envirnment
export PYTHONPATH=/usr/local:$PYTHONPATH
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

# 保存退出, 并执行:
$ source /etc/bash.bashrc

# 输出配置的caffe2环境变量
$ echo $PYTHONPATH
$ echo $LD_LIBRARY_PATH

Ubuntu14.04 安装cuda+cudnn+tensorflow+caffe2环境

运行 caffe2 测试程序:

$ ipython                                                   # 启动ipython

# 进入 ipython 终端
>> from caffe2.python import workspace, model_helper        # 导入caffe.python相关模块
>> import numpy as np                                       
>> x = np.random.rand(2, 3, 4)                              # 生成(2, 3, 4)维随机数据
>> workspace.FeedBlob("my_x", x)                            # 向工作空间填充数据
>> X = workspace.FetchBlob("my_x")                          # 向工作空间取回数据
>> print(X)

三. 配置pycharm开发环境

在安装好 tensorflow 和 caffe2 环境后,如果要用 pycharm 进行开发,最简单的方法就是在 Teminal 中使用命令启动 pycharm。但我们一般是通过桌面 icon 来启动的, 这种情况下就需要在 pycharm 的启动文件中导入它们依赖的一些环境变量。

打开Teminal,输入以下命令配置 pycharm 启动文件:

# 进入安装pycharm的目录中,将path_to_install_pycharm替换成你实际安装的路径
$ cd ~/path_to_installed_pycharm/bin         
$ vim (gedit) pycharm.sh                                    # 使用vim或者gedit编辑

# 找到设置 LD_LIBRARY_PATH 的那行,在上面插入以下两行:
export PYTHONPATH=/usr/local/:$PYTHONPATH                   # caffe2的python接口环境变量
LD_LIBRARY_PATH="/usr/local/cuda/lib64"                     # cuda动态库路径

# 保存退出并运行文件启动pycharm
$ ./pychram.sh

Ubuntu14.04 安装cuda+cudnn+tensorflow+caffe2环境

启动 pycharm 后,重新在 lancher 中锁定 pycharm 的 icon 。关闭 pycharm 后下次就用 icon 启动则可。

参考:

相关标签: 环境配置