阿里云服务器ECS    
弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新 [咨询更多]
阿里云存储OSS
简单易用、多重冗余、数据备份高可靠、多层次安全防护安全性更强、低成本 [咨询更多]
阿里云数据库RDS
稳定可靠、可弹性伸缩、更拥有容灾、备份、恢复、监控、迁移等方面的全套解决方案 [咨询更多]
阿里云安全产品
DDoS高防IP、web应用防火墙、安骑士、sll证书、态势感知众多阿里云安全产品热销中 [咨询更多]
阿里云折扣优惠    
云服务器ECS、数据库、负载均衡等产品新购、续费、升级联系客服获取更多专属折扣 [咨询更多]
阿里云GPU云服务器深度学习
2020-11-11    点击量:

  典名科技本文介绍阿里云服务器GPU云服务器深度学习,在GPU实例上部署NGC环境,GPU AI模型训练最佳实践,希望对您有所帮助。

  在GPU实例上部署NGC环境


以搭建TensorFlow深度学习框架为例介绍如何在GPU实例上部署NGC环境。

前提条件

在开始搭建TensorFlow深度学习框架之前,您必须先完成以下工作:
  • 注册阿里云账号,并完成实名认证。具体步骤,请参见注册阿里云账号实名认证 。
  • 登录NGC网站,注册NGC账号。
  • 登录NGC网站,获取NGC API key并保存到本地。登录NGC容器环境时需要验证您的NGC API Key。

背景信息

NGC(NVIDIA GPU CLOUD)是NVIDIA开发的一套深度学习生态系统,可以使开发者免费访问深度学习软件堆栈,建立适合深度学习的开发环境。

目前NGC在阿里云gn5实例作了全面部署,并且在镜像市场提供了针对NVIDIA Pascal GPU优化的NGC容器镜像。通过部署镜像市场的NGC容器镜像,开发者能简单快速地部署NGC容器环境,即时访问优化后的深度学习框架,大大缩减产品开发以及业务部署的时间,实现开发环境的预安装;同时支持调优后的算法框架,并且保持持续更新。

NGC网站提供了目前主流深度学习框架不同版本的镜像(例如Caffe、Caffe2、CNTK、MxNet、TensorFlow、Theano、Torch),您可以选择需要的镜像部署环境。

支持部署NGC环境的实例规格族包括:
  • gn4、gn5、gn5i、gn6v、gn6i、gn6e
  • ebmgn5i、ebmgn6i、ebmgn6v、ebmgn6e

下面以gn5实例为例,为您演示创建GPU实例和部署NGC环境的步骤。

操作步骤

  1. 创建一台gn5实例。具体操作,请参见使用向导创建实例
    在配置参数时,您需要注意以下几点:
    • 地域:只能选择华北1(青岛)、华北2(北京)、华北3(张家口)、华北5(呼和浩特)、华东1(杭州)、华东2(上海)、华南1(深圳)。
    • 实例:选择gn5实例规格。
    • 镜像:单击镜像市场,在弹出的对话框中,找到NVIDIA GPU Cloud VM Image,然后单击使用

    • 公网带宽:选择分配公网IP地址
      说明 如果这里没有分配公网IP地址,则在实例创建成功后,需要绑定EIP地址。
    • 安全组:选择一个安全组。安全组里必须开放TCP 22端口。如果您的实例需要支持HTTPS或DIGIT 6服务,必须开放TCP 443(用于HTTPS)或TCP 5000(用于DIGITS 6)端口。

    ECS实例创建成功后,请登录ECS管理控制台,记录实例的公网IP地址。

  1. 连接ECS实例。
    根据创建实例时选择的登录凭证选择以下任一方式连接ECS实例:
    • 使用密码验证连接ECS实例
    • 使用SSH密钥对验证连接ECS实例
  2. 按界面提示输入NGC官网获取的NGC API Key后按回车键,即可登录NGC容器环境。

4、运行nvidia-smi命令。

您能查看当前GPU的信息,包括GPU型号、驱动版本等,如下图所示。

5、按以下步骤搭建TensorFlow深度学习框架。

  1. 登录NGC网站,在TensorFlow镜像页面,获取docker pull命令。

    1. 下载TensorFlow镜像。
      docker pull nvcr.io/nvidia/tensorflow:18.03-py3                    
    2. 查看下载的镜像。
      docker image ls                   
    3. 运行容器,完成TensorFlow开发环境的部署。
      nvidia-docker run --rm -it nvcr.io/nvidia/tensorflow:18.03-py3              
  1. 选择以下任一种方式测试TensorFlow。
    • 简单测试TensorFlow。
      $python
      >>> import tensorflow as tf
      >>> hello = tf.constant('Hello, TensorFlow!')
      >>> sess = tf.Session()
      >>> sess.run(hello)
      如果TensorFlow正确加载了GPU设备,返回结果如下图所示。
    • 下载TensorFlow模型并测试TensorFlow。
      git clone https://github.com/tensorflow/models.git
      cd models/tutorials/image/alexnet
      python alexnet_benchmark.py --batch_size 128 --num_batches 100
      						
      运行状态如下图所示。

    • 保存TensorFlow镜像的修改。否则,下次登录时配置会丢失。
  GPU AI模型训练最佳实践
  典名科技介绍适用于AI图片训练场景,使用CPFS/NAS作为共享存储,利用容器服务Kubernetes版管理GPU云服务器集群进行图片AI训练。
  
  实现的方式
  搭建AI图片训练基础环境。使用CPFS存储训练数据。使用飞天AI加速训练服务加速训练。使用Arena一键提交作业。
  
  部署架构图
  GPU AI模型训练最佳实践
  
  选用的产品
  GPU服务器
  GPU云服务器是基于GPU应用的计算服务,多适用于AI深度学习、视频处理、科学计算、图形可视化等应用场景。
  文件存储NAS
  阿里云文件存储NAS是一个可共享访问、弹性扩展、高可靠、高性能的分布式文件系统。兼容POSIX文件接口,可支持数千台计算节点共享访问,可以挂载到弹性计算ECS、神龙裸金属、容器服务ACK、弹性容器ECI、批量计算BCS、高性能计算EHPC、AI训练PAI等计算业务上提供高性能的共享存储,用户无需修改应用程序,即可无缝迁移业务系统上云。
  文件存储CPFS
  文件存储CPFS(Cloud Parallel File Storage),是阿里云完全托管、可扩展的并行文件存储系统,针对高性能计算场景的性能要求进行了深度优化,提供对数据毫秒级的访问和高聚合IO、高IOPS的数据读写请求,可以用于AI深度训练、自动驾驶、基因计算、EDA仿真、石油勘探、气象分析、机器学习、大数据分析以及影视渲染等业务场景中。
  容器服务 ACK
  容器服务Kubernetes版(ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。

联系客服免费领取更多阿里云产品新购、续费升级折扣,叠加官网活动折上折更优惠