在腾讯云上搭建 Tensorflow for GPU 深度学习环境 —— Jinkey 原创

原文链接
https://jinkey.ai/post/tech/z…

本文作者 Jinkey(微信公众号 jinkey-love,官网
https://jinkey.ai

文章允许非篡改署名转载,删除或修改本段版权信息转载的,视为侵犯知识产权,我们保留追求您法律责任的权利,特此声明!

前言

写文章日期 2017年 11月 11日
当前软件版本

NVIDIA-Linux-x86_64-384.81.run

nvidia-diag-driver-local-repo-rhel7-384.81-1.0-1.x86_64.rpm

cuda-repo-rhel7-9.0.176-1.x86_64.rpm

cudnn-9.0-linux-x64-v7

tensorflow_gpu-1.4.0-cp27-none-linux_x86_64.whl

购买服务器

登录控制台,云服务器 – 云主机 – 地区选择“北京” – 新建,土豪可以选择包月哦
《在腾讯云上搭建 Tensorflow for GPU 深度学习环境 —— Jinkey 原创》
选择好之后呢,配置之后点击开通(账户余额需要足够,哈哈,此处应有广告费)
等待主机安装好,之后,在控制台获取到公网 IP(比如123.123.123.123),用 ssh 登录。

ssh root@123.123.123.123

登录之后,看看输入

cat /proc/version

查看你的 Linux 版本,企鹅云用的是

Linux version 3.10.0-693.5.2.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC) ) #1 SMP Fri Oct 20 20:32:50 UTC 2017

所以教程的相关依赖我都会下载 Red Hat 版本的
《在腾讯云上搭建 Tensorflow for GPU 深度学习环境 —— Jinkey 原创》
《在腾讯云上搭建 Tensorflow for GPU 深度学习环境 —— Jinkey 原创》

下载依赖

依赖可以直接通过
wget 下载到主机上,也可以先下载到 PC 本地再通过 xftp(Windows)或 Filezilla(Mac)上传。

下载NVIDIA驱动
http://www.nvidia.com/Download/Find.aspx

《在腾讯云上搭建 Tensorflow for GPU 深度学习环境 —— Jinkey 原创》

这里给出 Red Hat 版本 的下载地址

http://cn.download.nvidia.com…

下载 CUDA
https://developer.nvidia.com/cuda-downloads
《在腾讯云上搭建 Tensorflow for GPU 深度学习环境 —— Jinkey 原创》
下载后得到cuda-repo-rhel7-9.0.176-1.x86_64.rpm

这里给出 Red Hat 版本 的下载地址

http://developer.download.nvi…

下载 cuDNN
https://developer.nvidia.com/rdp/cudnn-download(需要注册和填写问卷之后下载)
《在腾讯云上搭建 Tensorflow for GPU 深度学习环境 —— Jinkey 原创》

这里给出 通用 Linux 版本 的下载地址

https://developer.nvidia.com/…

《在腾讯云上搭建 Tensorflow for GPU 深度学习环境 —— Jinkey 原创》

安装 NVIDIA驱动

方法一(官方推荐方法)
在下载页面就有安装方法介绍,不同版本系统安装方法不同
《在腾讯云上搭建 Tensorflow for GPU 深度学习环境 —— Jinkey 原创》
以下是 RH 的安装方法:

# 请替换文件名为你下载依赖时对应的文件名, 公众号 jinkey-love
rpm -i nvidia-diag-driver-local-repo-rhel7-384.81-1.0-1.x86_64.rpm
yum clean all
yum install cuda-drivers
reboot

方法二(极限偷懒版)

# 安装 Development Tools 软件包
sudo yum update
sudo yum group install 'Development Tools'
# 安装 elrepo 源
sudo rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org
sudo rpm -Uvh http://www.elrepo.org/elrepo-release-7.0-2.el7.elrepo.noarch.rpm
# 探测要安装的包
sudo yum install nvidia-detect
nvidia-detect
# 安装
sudo yum install kmod-nvidia

安装 CUDA

在下载页面就有安装方法介绍,不同版本系统安装方法不同,下面是以 RH 为例:

# 请替换文件名为你下载依赖时对应的文件名, 公众号 jinkey-love
sudo rpm -i cuda-repo-rhel7-9.0.176-1.x86_64.rpm
sudo yum clean all
sudo yum install cuda

添加 CUDA 到环境变量

vim ~/.bash_profile

加入

export LD_LIBRARY_PATH=”$LD_LIBRARY_PATH:/usr/local/cuda/lib64″

export CUDA_HOME=/usr/local/cuda

因为写教程的时候 tensorflow 1.4.0 要支持 CUDA 9.0 的话,还需要从源码编译来安装,所以为了避免通过 pip 安装会出现 ImportError: libcublas.so.8.0: cannot open shared object file: No such file or directory的错误,可以先使用 CUDA8.0(安装 CUDA 9.0 的时候也会同时安装上8.0 的,所以你不需要重新安装),此时环境变量可以这么写:

export LD_LIBRARY_PATH=”$LD_LIBRARY_PATH:/usr/local/cuda-8.0/lib64″

export CUDA_HOME=/usr/local/cuda-8.0

安装 cuDNN

# 请替换文件名为你下载依赖时对应的文件名, 公众号 jinkey-love
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

《在腾讯云上搭建 Tensorflow for GPU 深度学习环境 —— Jinkey 原创》

安装 Python 依赖

企鹅云自带了 python 2.7

# 安装 pip
sudo yum install python-pip python-devel
sudo pip install --upgrade pip

安装 Tensorflow

方法一 源码编译(要使用 CUDA9.0目前之能支持这种方法)
方法二 pip
pip install tensorflow-gpu –upgrade

安装 matplotlib

sudo yum install freetype-devel
# 公众号 jinkey-love,官网 jinkey.ai
sudo yum install libpng-devel
sudo pip install matplotlib

安装 Keras

Keras 封装了 Theano 和 Tensorflow 的高度模块化的深度学习库,非常适合新手。

sudo pip install keras --upgrade

Keras 默认后端为 Theano 所以我们要修改为 Tensorflow

vim .keras/keras.json

修改为

{
    "image_dim_ordering": "tf", 
    "epsilon": 1e-07, 
    "floatx": "float32", 
    "backend": "tensorflow"
}

完成

实战了一下,同样的项目下,GPU 训练速度比 CPU 训练快了 187 倍。如果你觉得教程有用,可以微信打赏我哦
《在腾讯云上搭建 Tensorflow for GPU 深度学习环境 —— Jinkey 原创》

参考资料

安装 NVIDIA 驱动指引
安装 CUDA 驱动指引
ImportError: libcublas.so.8.0解决办法

    原文作者:Jinkey
    原文地址: https://segmentfault.com/a/1190000012730897
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞