Tensorflow-gpu版本安装
最近给公司部署一套深度学习相关的环境,以tensorflow为框架。简单整理下整个的部署过程。
tensorflow官方网站:https://www.tensorflow.org
服务器选型
我们的tensorflow是基于gpu的版本,使用的是tensorflow-gpu 1.12.0版本。既然是gpu的版本,那么首先得需要一个带有gpu的服务器。我们这里直接使用阿里云服务器,型号如下:

NVIDIA GPU驱动安装
那么既然有了带gpu的服务器,gpu驱动就必然是一个绕不开的话题。通过上面的选型我们可以知道,阿里云的购买页面明确给出了gpu的型号,我们需要去到gpu官方网站,根据型号选择驱动。
通过如下页面查找相应的GPU驱动:
https://www.nvidia.com/Download/index.aspx?lang=en-us

下载的驱动名称示例:NVIDIA-Linux-x86_64-410.104.run
安装的话相对比较简单:
# 通过shell运行,然后按照提示操作即可
sh NVIDIA-Linux-x86_64-410.104.run
验证是否正常安装了:
[root@ctnr ~]# nvidia-smi
Tue Mar 26 11:31:34 2019
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 410.104 Driver Version: 410.104 CUDA Version: 10.0 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 Tesla P4 Off | 00000000:00:08.0 Off | 0 |
| N/A 28C P8 7W / 75W | 0MiB / 7611MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| No running processes found |
+-----------------------------------------------------------------------------+
查看当前服务器显卡的个数:
yum install -y lspci
[root@ctnr ~]# lspci|grep -i nvidia
00:08.0 3D controller: NVIDIA Corporation GP104GL [Tesla P4] (rev a1)
其中00:08.0是显卡的代号,通过如下方式可以查看详细的显卡信息:
[root@ctnr ~]# lspci -v -s 00:08.0
00:08.0 3D controller: NVIDIA Corporation GP104GL [Tesla P4] (rev a1)
Subsystem: NVIDIA Corporation Device 11d8
Physical Slot: 8
Flags: bus master, fast devsel, latency 0, IRQ 39
Memory at fd000000 (32-bit, non-prefetchable) [size=16M]
Memory at e0000000 (64-bit, prefetchable) [size=256M]
Memory at f2000000 (64-bit, prefetchable) [size=32M]
Capabilities: [60] Power Management version 3
Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [78] Express Endpoint, MSI 00
Capabilities: [c8] Vendor Specific Information: Len=08 <?>
Kernel driver in use: nvidia
Kernel modules: nouveau, nvidia_drm, nvidia
这里是tensorflow官方给出的gpu支持:https://www.tensorflow.org/install/gpu
cuda和cudnn的安装
tensorflow-gpu要想正常运行,除了必要的gpu驱动,还依赖cuda和cudnn两个sdk。
下面是tensorflow-gpu版本依赖的cuda和cudnn的版本:
https://www.tensorflow.org/install/source

cuda是深度学习的sdk
cudnn是神经网络的sdk
cuda安装
cuda的下载地址:
https://developer.nvidia.com/cuda-90-download-archive

需要下载cuda包,以及所有的补丁文件,我这里因为是centos,所以下载的全是rpm包。直接通过yum安装即可:
yum localinstall -y cuda-repo-rhel7-9-0-*.rpm
需要说明的是,这些包都只是本地仓库包,也就是说,安装了这些包,并不会真正安装cuda,而只是把cuda的包在本地生成了一个本地yum源。这个时候,就可以直接使用yum install -y cuda来安装cuda了。
验证安装:
[root@ctnr ~]# cat /usr/local/cuda/version.txt
CUDA Version 9.0.176
cudnn的安装
cudnn的下载地址:
https://developer.nvidia.com/rdp/cudnn-download

需要说明的是,要下载cudnn,需要先登录,这就要求我们得要有nvidia的帐号。
这两个包也是rpm包,直接安装即可。
安装完成后的验证方式如下:
[root@ctnr ~]# cat /usr/include/cudnn_v7.h |grep CUDNN_MAJOR -A 2
#define CUDNN_MAJOR 7
#define CUDNN_MINOR 5
#define CUDNN_PATCHLEVEL 0
--
#define CUDNN_VERSION (CUDNN_MAJOR * 1000 + CUDNN_MINOR * 100 + CUDNN_PATCHLEVEL)
#include "driver_types.h"
上面的三行,分别代表主版本、次版本以及修定版本
在上图中,其实可以看到,除了定制的系统版本,cudnn也提供通用版本,即cnDNN Library for Linux,下载下来是一个tar.gz的文件,我们可以通过如下方式安装即可:
tar xf cudnn-9.0-linux-x64-v7.5.0.56.tgz
cp cuda/lib/64/libcudnn.so* /usr/local/cuda/lib64/
cp cuda/lib64/libcudnn_static.a /usr/local/cuda/lib64/
cp cuda/include/cudnn.h /usr/include/
另外,还需要说明的是,我尝试在windows上直接下载通用版本的时候,下载的总是一个solitairetheme8为后缀的一个卡牌游戏。在linux上通过wget的方式下载,则是正常的压缩包。
tensorflow-gpu安装
以上配置都做好了以后,tensorflow-gpu的安装相对倒是比较简单。官方基于Bazel使用源码编译的安装方式可以直接参考这里:https://www.tensorflow.org/install/source#build_the_package
我这里简化部署,直接使用pip安装:
yum install -y python36 python36-pip
pip3 install -U pip six numpy wheel mock
pip3 install -U keras_applications==1.0.5 --no-deps
pip3 install -U keras_preprocessing==1.0.3 --no-deps
pip3 install tensorflow-gpu-1.12.0
至此,tensorflow安装完成。
Tensorflow-gpu版本安装的更多相关文章
- tensorflow 一些好的blog链接和tensorflow gpu版本安装
pading :SAME,VALID 区别 http://blog.csdn.net/mao_xiao_feng/article/details/53444333 tensorflow实现的各种算法 ...
- tensorflow GPU版本安装及配置
经检测速度大幅度上升,不枉费我折腾了这么久,最坑的就是网上教程.书都没有写将cuda的bin加入全局变量,还是根据报错信息推出来的. 1.cuda9.0下载安装 https://developer.n ...
- Python3.7+Pycharm+cuda10.0+tensorflow GPU版本 安装
处理器:I5-7500 显卡 :GTX1050Ti 系统 :Win10 1. 首先搭建Python环境. 官网https://www.python.org/downloads/下载Python ...
- 【转】Ubuntu 16.04安装配置TensorFlow GPU版本
之前摸爬滚打总是各种坑,今天参考这篇文章终于解决了,甚是鸡冻\(≧▽≦)/,电脑不知道怎么的,安装不了16.04,就安装15.10再升级到16.04 requirements: Ubuntu 16.0 ...
- win10系统下安装TensorFlow GPU版本
首先要说,官网上的指南是最好的指南. https://www.tensorflow.org/install/install_windows 需要FQ看. 想要安装gpu版本的TensorFlow.我们 ...
- 通过Anaconda在Ubuntu16.04上安装 TensorFlow(GPU版本)
一. 安装环境 Ubuntu16.04.3 LST GPU: GeForce GTX1070 Python: 3.5 CUDA Toolkit 8.0 GA1 (Sept 2016) cuDNN v6 ...
- Win10上安装Keras 和 TensorFlow(GPU版本)
一. 安装环境 Windows 10 64bit 家庭版 GPU: GeForce GTX1070 Python: 3.5 CUDA: CUDA Toolkit 8.0 GA1 (Sept 2016 ...
- 说说Windows7 64bits下安装TensorFlow GPU版本会遇到的一些坑
不多说,直接上干货! 再写博文,回顾在Windows7上安装TensorFlow-GPU的一路坑 Windows7上安装TensorFlow的GPU版本后记 欢迎大家,加入我的微信公众号:大数据躺过的 ...
- Windows7 64bits下安装TensorFlow GPU版本(图文详解)
不多说,直接上干货! Installing TensorFlow on Windows的官网 https://www.tensorflow.org/install/install_windows 首先 ...
- Ubuntu 16.04 + CUDA 8.0 + cuDNN v5.1 + TensorFlow(GPU support)安装配置详解
随着图像识别和深度学习领域的迅猛发展,GPU时代即将来临.由于GPU处理深度学习算法的高效性,使得配置一台搭载有GPU的服务器变得尤为必要. 本文主要介绍在Ubuntu 16.04环境下如何配置Ten ...
随机推荐
- 实验三 Java敏捷开发与xp实现
实验内容: 1. XP基础 2. XP核心实践 3. 相关工具 实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim编辑器> 课程 2.完成实 ...
- 《Linux内核分析》第六周笔记 进程的描述和进程的创建
进程的描述和进程的创建 一.进程的描述 1.进程描述符task_struct数据结构(一) 操作系统的三大功能:进程管理(核心).内存管理.文件系统. 进程控制块PCB——task_struct(进程 ...
- 《Linux内核分析》第七周: 可执行程序的装载
LINUX内核分析第七周学习总结--可执行程序的装载 杨舒雯(原创作品转载请注明出处) <Linux内核分析>MOOC课程http://mooc.study.163.com/course/ ...
- Linux内核第四节 20135332武西垚
实验目的: 使用库函数API和C代码中嵌入汇编代码两种方式使用同一个系统调用 实验过程: 查看系统调用列表 get pid 函数 #include <stdio.h> #include & ...
- 结构化分析(SA)
1.什么叫模型?我觉得它的关键字:抽象 重要特征 降低复杂度. 2.软件设计的方法 分类:面向功能~,面向对象的设计. 面向数据流的方法是在结构化分析中提到的. 哦~ 3.面向数据流的结构化分析 特点 ...
- 第三个sprint冲刺第一阶段
- Genymotion安装总结
周末的时候为了测试论文中的Almond虚拟助手软件,所以要去Google Play上去下载. 但是我的两个安卓模拟器:夜神和海马玩模拟器的安卓版本太低了,导致无法使用 谷歌服务,所以连商店都进不去. ...
- Apache+php安装和配置 windows
Apache+php安装和配置 windows Apache 安装 1.官网网址:http://httpd.apache.org/ 2.Download 3.点击链接Files for Microso ...
- [2017BUAA软工]第0次作业
第0次作业 Part 1:结缘计算机 1. 你为什么选择计算机专业?你认为你的条件如何?和这些博主比呢? 我跟这篇博客中的作者相似的地方在于,我们都在一个比较早的阶段接触了计算机,我家乡的经济在全国来 ...
- vuex的数据交互
methods:{ ...mapMutations({aaa:hs}) //将mutations的方法暴露出来,进行调用 aaa是他的名字 ...mapActions(['hs']) //将actio ...