原文链接 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
购买服务器
登录控制台,云服务器 - 云主机 - 地区选择“北京” - 新建,土豪可以选择包月哦
选择好之后呢,配置之后点击开通(账户余额需要足够,哈哈,此处应有广告费)
等待主机安装好,之后,在控制台获取到公网 IP(比如123.123.123.123),用 ssh 登录。
ssh [email protected]
登录之后,看看输入
cat /proc/version
查看你的 Linux 版本,企鹅云用的是
Linux version 3.10.0-693.5.2.el7.x86_64 ([email protected]) (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 版本的
下载依赖
依赖可以直接通过 wget
下载到主机上,也可以先下载到 PC 本地再通过 xftp(Windows)或 Filezilla(Mac)上传。
下载NVIDIA驱动
http://www.nvidia.com/Download/Find.aspx
这里给出 Red Hat 版本 的下载地址
http://cn.download.nvidia.com...
下载 CUDA
https://developer.nvidia.com/cuda-downloads
下载后得到cuda-repo-rhel7-9.0.176-1.x86_64.rpm
这里给出 Red Hat 版本 的下载地址
http://developer.download.nvi...
下载 cuDNN
https://developer.nvidia.com/rdp/cudnn-download(需要注册和填写问卷之后下载)
这里给出 通用 Linux 版本 的下载地址
https://developer.nvidia.com/...
安装 NVIDIA驱动
方法一(官方推荐方法)
在下载页面就有安装方法介绍,不同版本系统安装方法不同
以下是 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
安装 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 倍。如果你觉得教程有用,可以微信打赏我哦
参考资料
安装 NVIDIA 驱动指引
安装 CUDA 驱动指引
ImportError: libcublas.so.8.0解决办法