深信服超融合Tensorflow-vGPU版配置指导
  

HNing 74461人觉得有帮助

{{ttag.title}}
一、 TensorFlow简介
TensorFlow(vGPU)是Google开源的第二代用于数字计算的软件库,概括地说,TensorFlow可以理解为一个深度学习框架,里面有完整的数据流向和处理机制,同时还封装了大量高效可用的算法和构建神经网络的函数,此软件以其优越的性能广泛应用于各大科研院所、高校等深度学习场景的科研计算中。目前用于深度学习的GPU主流的硬件型号有NVIDIA-P100和NVIDIA-V100两款。

二、 安装前准备工作
TensorFlow-vGPU版的安装准备内容根据客户的需求主要包括以下部分,以某客户为例。
2.1 客户的需求为:Ubuntu16.04,python3.5+,TensorFlow 1或者2,每个虚拟机切分配置2QB的显存
2.2 硬件方面准备:客户自购三台第三方服务器,其中两台联想服务器分别配置两块NVIDIA-P100(16GB)的显卡,一台浪潮服务器配置两块NVIDIA-V100(32GB)显卡(此处需要注意的是我们的标准版本aCloud590或者600可以支持NVIDIA-P100显卡的切分,但是不支持NVIDIA-V100显卡的切分,且标准版本的aCloud自带的显卡切分驱动在切分显卡之后不支持虚拟机安装NVIDIA-Linux-x86_64-390.63-grid.run(不包括)以上的显卡驱动,需要研发侧修改部分代码支持,可以联系研发冯汉昱16017评估 )
2.3 需求分析:根据客户TensorFlow的需求为1.0-2.0的版本都可,此次给客户选装TensorFlow1.15.0版本,根据这个TensorFlow版本可以确定出需要安装的CUDA版本,然后再根据CUDA版本可以确定出NVIDIA显卡切分驱动的版本
具体的对应关系如下:
2.3.1 Tensorflow-gpu版本与CUDA及CUDNN版本对应关系
具体对应关系如下图所示

参考链接:https://tensorflow.google.cn/install/source
2.3.2 显卡( NVIDIA )驱动与CUDA版本对应关系
具体对应关系如下图所示

参考链接:https://docs.nvidia.com/cuda/cud ... se-notes/index.html

   总结:如上所示,如需安装tensorflow-gpu1.13以上的版本英伟达显卡( NVIDIA )驱动要求至少为410以上的驱动
2.4 准备内容汇总:
1. Ubuntu16.04.6-desktop-amd64.iso
2. 显卡驱动:NVIDIA-Linux-x86_64-430.63-grid.run
3.  Anaconda3-2019.10-Linux-x86_64.sh
(安装tensorflow的时候需要很多依赖库,用anaconda3安装的时候可以自动安装这些依赖库,并且能自动匹配cuda和cudnn和tensorflow的版本,Anaconda是Python的包管理器和环境管理器,Anaconda附带了一大批常用数据科学包,它附带了conda、Python和 150 多个科学包及其依赖项,Anaconda 是在 conda(一个包管理器和环境管理器)上发展出来的。在数据分析中,会用到很多第三方的包,而conda(包管理器)可以很好的帮助在计算机上安装和管理这些包,包括安装、卸载和更新包。https://www.anaconda.com/distribution/
4. 虚拟机必要的安装联网环境

三、安装Ubuntu16.04虚拟机
3.1 在超融合平台上虚拟机>新增>创建全新虚拟机,然后根据实际情况命名、分组、划分虚拟机资源配置即可,注意在安装前就需要编辑虚拟机显卡资源,并且在安装过程中虚拟机不要联网。(此处需要补充个Ubuntu16.04安装经验,在安装的过程中有的时候直接选择操作系统类型为Ubuntu在创建的过程中可能会出现花屏,导致无法继续安装的情况,所以我在安装的时候选择操作系统为其他-64位系统或者Linux 3.X/2.6 Kernel(64位),鼠标类型选择PS2,如果是默认的USB类型鼠标可能无法在虚拟机内看到鼠标指针)

3.2 根据使用习惯选择安装语言,然后点击“安装Ubuntu”

3.3 如果只是主要用来做深度学习使用,此处什么都不勾选,直接“继续”


3.4 此处无需调整,直接点击“现在安装”,然后弹窗的提示直接点“继续”

3.5 此处点选“shanghai”然后点击“继续”

3.6 根据实际情况配置即可,然后直接点击“继续”就开始自动安装了,此处补充一下,在安装的过程中不建议虚拟机联网,否则会安装很多意义不大的更新和文件,耽误时间,但是在安装完成之后需要让虚拟机连接网络以完成必要的文件更新和下载

3.7 安装完成之后会提示重启,重启之前一定要先把光驱加载的ISO镜像移除

3.8 优化工具的安装



3.9 虚拟机联网,在虚拟机系统设置里的软件和更新里选择中国然后选择阿里云的下载服务器,然后执行sudo apt-get update命令


3.10 安装ssh、vim等常用命令,安装完成之后执行sudo service ssh start 启用ssh远程接入




四、安装NVIDIA显卡驱动
4.1 虚拟机新建一个文件夹,然后上传NVIDIA-Linux-x86_64-430.63-grid.run驱动文件

4.2 安装显卡驱动的时候需要注意,先执行sudo init 3 然后在驱动文件目录下执行sudo sh 显卡驱动名 --no-opengl-files (加--no-opengl-files的目的是为了防止图形界面登录的时候循环输入密码的情况),然后按照提示执行下一步就可以




4.3 显卡安装完成的检查,执行nvidia-smi,如果输出如下,则代表显卡安装成功

4.4 显卡授权的配置,如果使用的是切分显卡,那么授权一定是vDWS授权类型,此处需要提前先部署好vGPU授权服务器,授权服务器的部署,此处不再赘述,然后再虚拟机中配置授权信息,执行命令cd /etc/nvidia,然后ls查看会有一个授权文件配置模板,然后执行命令sudo cp  gridd.conf.template gridd.conf

4.5 编辑授权信息,执行sudo vim gridd.conf,然后需要配置三个地方,也即授权服务器的地址、端口、以及授权类型,填写完成保存之后执行命令systemctl restart nvidia-gridd





4.6 授权服务器查看虚拟机已经获取到授权


五、安装Anaconda3
5.1 联网环境下安装:
虚拟机联网环境下可以直接下载安装步骤
5.1.1 下载安装包
终端执行命令
wget https://repo.anaconda.com/archiv ... .10-Linux-x86_64.sh(安装包大约为500M左右)
5.1.2 安装Anaconda3
终端执行sudo sh Anaconda3-2019.10-Linux-x86_64.sh 按照提示进行安装,待安装完毕之后重新打开终端执行conda –version如果能正常输出版本代表已经成功安装完 Anaconda3

5.2 本机环境安装,可以提前下载好Anaconda3-2019.10-Linux-x86_64.sh,然后上传到虚拟机中,然后执行命令sudo sh Anaconda3-2019.10-Linux-x86_64.sh

然后按照提示安装即可,需要回车的地方就回车,然后其他需要输入“yes/no”的地方全部输入yes,待安装完成之后关闭命令行,然后重新再打开命令行输入conda或者conda --version,如果出现版本就代表安装成功

5.3 执行命令sudo chmod -R 777 /home/test/ 把/home/test/这个文件的目录全权限设置为所有用户可读可写可执行

5.4 下一步为了提高速度可以把conda的源改为国内的源,执行命令
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes


六、安装TensorFlow-(v)GPU版
6.1 执行命令conda search tensorflow-gpu查询当前环境下支持安装的tensorflow-gpu版本

6.2 因为我前边的驱动装的是NVIDIA430版本的驱动,所以本文以安装tensorflow-gpu1.15.0版本为例,执行命令conda install tensorflow-gpu==1.15.0,遇到需要输入yes/no的地方输入yes即可,然后就开始执行自动下载安装,大概660MB的包,如果遇到网络状态不好,下载失败,再重新执行上述命令即可


6.3 待上述包全部安装完成之后,测试安装是否正常安装,执行命令python 然后执行import tensorflow as tf 然后再执行命令tf.test.is_gpu_available()如果输出的值为true就代表安装成功

6.4 程序测试方法
如果需要验证程序执行是否有问题,可以开两个ssh窗口,一个窗口执行程序,另一个程序检视GPU运行情况,此处附一个测试脚本,上传到虚拟机中,然后目录下执行命令python test3.py,另一个窗口查看GPU的运行情况


打赏鼓励作者,期待更多好文!

打赏
3人已打赏

maoxs 发表于 2020-4-7 19:19
  
好文,值得收藏
sangfor_闪电回_小六 发表于 2020-4-8 18:11
  
您好,感谢您的分享!
社区技术博客征稿活动正在进行,只要符合内容要求,就有奖励,欢迎投稿~
了解奖励和投稿要求,请参考:https://bbs.sangfor.com.cn/forum ... read&tid=103115
新手727241 发表于 2020-4-10 07:43
  
学习了,感谢分享
逆天而行 发表于 2020-4-11 20:40
  
文章写的很详细,看了就会操作,感谢作者分享。
己亥年 发表于 2020-4-15 14:22
  
我在社区摸爬滚打这么多年,所谓阅人无数,就算没有见过猪走路,也总明白猪肉是啥味道的。一看到楼主的气势,我就觉得楼主同在社区里灌水的那帮小混子有着本质的差别,你一定就是传说中的最强技术牛。
全村骄傲 发表于 2020-4-15 14:40
  
看完了,但是没懂
新手386710 发表于 2022-10-12 20:23
  
内容丰富精彩 学习学习   
发表新帖
热门标签
全部标签>
西北区每日一问
安全效果
高手请过招
【 社区to talk】
干货满满
社区新周刊
每日一问
新版本体验
技术盲盒
技术咨询
产品连连看
纪元平台
标准化排查
GIF动图学习
功能体验
社区帮助指南
信服课堂视频
安装部署配置
解决方案
SDP百科
自助服务平台操作指引
玩转零信任
S豆商城资讯
秒懂零信任
每周精选
畅聊IT
答题自测
专家问答
技术笔记
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
云计算知识
用户认证
原创分享
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
信服圈儿
技术争霸赛
「智能机器人」
追光者计划
深信服技术支持平台
答题榜单公布
2023技术争霸赛专题
通用技术
卧龙计划
华北区拉练
天逸直播
以战代练
技术晨报
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
排障那些事
升级&主动服务
高频问题集锦
POC测试案例
全能先锋系列
云化安全能力

本版版主

192
305
981

发帖

粉丝

关注

217
288
151

发帖

粉丝

关注

25
14
5

发帖

粉丝

关注

7
11
24

发帖

粉丝

关注

5
8
7

发帖

粉丝

关注

31
34
46

发帖

粉丝

关注

本版达人

皮皮虾·真

本周建议达人

郑州网络

本周分享达人

二进制网络

本周提问达人