TensorFlow-GPU 部署指南[原创]

TensorFlow-GPU 部署指南[原创]

关于TensorFlow

TensorFlow™ 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。它灵活的架构让你可以在多种平台上展开计算,例如台式计算机中的一个或多个CPU(或GPU),服务器,移动设备等等。TensorFlow 最初由Google大脑小组(隶属于Google机器智能研究机构)的研究员和工程师们开发出来,用于机器学习和深度神经网络方面的研究,但这个系统的通用性使其也可广泛用于其他计算领域。

部署环境

  • 操作系统:Ubuntu 16.04 - x64
  • Python: 3.5
  • GPU: 1070Ti
  • 开发环境:PyCharm 2018.1.3
  • CUDA® 工具包 9.0
  • cuDNN v7.1.4 for 9.0

安装Ubuntu

由于TensorFlow-GPU的运行高度依赖于NVIDIA公司的CUDA和cuDNN工具包,依照版本依赖的情况,我建议您安装 Ubuntu 16.04 LTS / Ubuntu 17.10 LTS

在此具体安装过程不再赘述

注:在安装过程中请勿选择中文语言安装,请使用英语完成安装,进入操作系统在系统设置中再更改为中文 ,可避免用户home文件夹下的目录变为中文名。

手动安装NVIDIA显卡驱动(debian系均适用)

不建议使用APT包管理器直接安装

前往 NVIDIA官网下载对应的显卡Linux驱动

nvidia

下载完成后,通常我们能在 ~/Downloads 文件夹下找到 NVIDIA-Linux-x86_64-390.59.run(具体文件名请以您下载的文件名为准)

  1. 先给予权限
    chmod a+x NVIDIA-Linux-x86_64-390.59.run
  2. 执行命令
    sudo ./NVIDIA-Linux-x86_64-390.59.run --no-opengl-files --no-x-check --no-nouveau-check
    • --no-opengl-files 只安装驱动文件,不安装OpenGL文件(请一定加上此参数,避免出现系统无法登陆的BUG)
    • --no-x-check 安装驱动时不检查X服务
    • --no-nouveau-check 安装驱动时不检查nouveau

在接下来安装过程中,请统一点击Yes \ Allow

安装TensorFlow依赖环境

python 3

打开命令行窗口(CTRL+ALT+T) -> 运行命令 python:默认的python版本应该是2.7
但实际上,Ubuntu16已经内置了Python-3(可运行命令python3查看具体版本)
运行下列命令进行版本进行切换:

# 列出 python 版本
update-alternatives --list python
# 若提示 update-alternatives: error: no alternatives for python 
# 请运行下列代码将本地版本加入管理器中(具体版本号请以实际为准):
update-alternatives --install /usr/bin/python python /usr/bin/python2.7 1
update-alternatives --install /usr/bin/python python /usr/bin/python3.5 2
# 切换版本 选择序号切换至Python-3.5版本
update-alternatives --config python

安装CUDA

  • 安装linux-headers
    sudo apt-get install linux-headers-$(uname -r)

  • 下载 CUDA

    注:请勿下载 deb 安装包!这将会导致诸多严重的错误!

    2018-05-21-02-00-22----

  • 安装

    下载后缀名为run的文件后,使用命令 sudo chmod a+x cuda_9.0.176_384.81_linux.run 赋予权限

    运行程序:sudo ./cuda_9.0.176_384.81_linux.run

    注:当提示是否需要安装NVIDIA显卡驱动时请选择

    Do you accept the previously read EULA?
    accept/decline/quit: accept
    
    Install NVIDIA Accelerated Graphics Driver for Linux-x86_64 361.62?
    (y)es/(n)o/(q)uit: n
    
    Install the CUDA 8.0 Toolkit?
    (y)es/(n)o/(q)uit: y
    
    Enter Toolkit Location
    [ default is /usr/local/cuda-9.0 ]:
    
    Do you want to install a symbolic link at /usr/local/cuda?
    (y)es/(n)o/(q)uit: y
    
    Install the CUDA 9.0 Samples?
    (y)es/(n)o/(q)uit: y
    
    Enter CUDA Samples Location
    [ default is /home/textminer ]:
    
  • 配置环境变量
    运行命令:vim ~/.bashrc

    2018-05-21-01-54-41----

    在末尾添加:

    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}}
    

    重启bash窗口或运行:

    source ~/.bash_profile
    
  • 测试
    运行命令:nvidia-smi

    2018-05-21-02-05-03----

安装 cuDNN

安装 cuDNN 必须要注册并成为NVIDIA开发者(注:注册页面响应较为缓慢请耐心等待,疑似Chrome有兼容性问题,请使用Firefox)
2018-05-21-02-08-59----

注册完成后,还需要填写一张调查问卷,内容很少,您可以认真填写。

2018-05-21-02-15-00----

选择下载 cuDNN v7.1.4 Library for Linux (不建议下载deb包)

下载完成后运行命令解压

tar -xzvf cudnn-9.0-linux-x64-v7.tgz

解压完成后,仅需运行四条命令即可完成安装

$ sudo cp cuda/include/cudnn.h /usr/local/cuda/include
$ sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
$ sudo chmod a+r /usr/local/cuda/include/cudnn.h
$ sudo chmod a+r /usr/local/cuda/lib64/libcudnn*

注意

在tensorflow中文官方文档中,还有以下步骤:
2018-05-21-02-20-01----
由于此工具已经集成进了CUDA之中,无需额外安装,请跳过此步骤!

安装TensorFlow

由于TensorFlow的开发通常使用Python,所以我建议使用 Virtualenv 的安装方式Virtualenv 是一个与其他 Python 开发相互隔离的虚拟 Python 环境,它无法干扰同一计算机上的其他 Python 程序,也不会受其影响。在 Virtualenv 安装过程中,您不仅要安装 TensorFlow,还要安装 TensorFlow 需要的所有软件包。(这一过程其实很简单。)要开始使用 TensorFlow,您只需要“激活”虚拟环境。总而言之,Virtualenv 提供一种安全可靠的机制来安装和运行 TensorFlow。

其中最简单的方式便是使用 pycharm IDE 工具(其提供免费的社区版)

下载完成后,按照压缩包内的reademe进行安装运行,选择新建项目,修改项目名,选择virtualenv,设置正确的python3路径:
2018-05-21-02-29-36----

选择菜单栏 “File” -> "Settings" -> "Project:[你的项目名]" -> "Project interpreter" -> 点击右侧的加号 -> 搜索 “tensorflow” -> 找到并选中 tensorflow-gpu -> 点击下方的 “Install Package” 进行安装

2018-05-21-02-34-06----
2018-05-21-02-35-33----

注:此处可能会提示未安装pip,可通过apt-get进行安装: sudo apt-get install python3-pip

至此,安装全部完成,请尽情书写您的代码吧!

[Wlfcss 原创内容,转载请注明来源!]


湘ICP备18004308号-1 湘ICP备18004308号-2