一. 什么是阿里云HPC

阿里云HPC是阿里云高性能计算的简称,有两重含义,一重含义是阿里云高性能计算产品,另一重含义是指阿里云高性能计算团队。

作为产品来讲,是中国第一个在公共云上推出的高性能计算的产品,也是中国首个推出公共云上的Nvidia Maxwell GPU + Intel Broadwell CPU 架构的强强组合的产品,单节点单精度计算能力超过16Tflops,初期提供物理机 + Tesla GPU加速卡形式。

推出阿里云HPC主要基于HPC用户的特点:(1)对高性能计算有永无止境的需求,不可以做多租户的共享,不可以把一台物理机分给多个用户来用,无论多少高的计算能力,都需要更高,无论多少集中的计算密集,都需要更集中的计算密集;(2)对GPU加速卡完整功能的需求,不能有功能的阉割;(3)需要和其他云产品互通,打通数据处理的上下游;(4)需要计算可以弹性扩展。因此催生了阿里云上HPC产品的诞生。

作为团队来讲,是指阿里云HPC的团队,我们是飞天八部技术创新团队,目前主要负责集团内GPU集群的建设、客户服务和应用的优化;以及公共云上HPC产品的运营、客户的服务和应用优化;同时我们还负责做一些前沿技术的研究,例如Nvidia/AMD GPU、Intel Xeon Phi、FPGA等在深度学习方面的技术预研。

二. 什么是人工智能加速利器

要了解什么是人工智能的加速利器,首先需要了解一下人工智能的发展简史:

  • 1950年,人们提出图灵测试,这是人工智能的萌芽阶段;
  • 1950年~1980年,人工智能进展缓慢;
  • 90年代~2000年,浅层机器学习模型的兴起,如SVM、LR、Boosting等算法;
  • 2006年,加拿大多伦多大学教授、机器学习领域泰斗——Geoffrey Hinton在《Science》上发表了一篇文章,开启了深度学习在学术界和工业界的浪潮;
  • 2011年,Google Brain项目取得了惊人的进展,机器通过看YouTube视频学会了识别猫和人,但需要2000个CPU的规模,NVidia和斯坦福大学的Andrew Ng合作,用12片GPU的深度学习能力替代了2000个CPU;
  • 2012年,多伦多大学的Alex在ImageNet图像识别比赛上获得冠军,Alex和他的团队没有编写任何视觉方面的专业代码,仅靠GPU驱动的深度神经网络,机器就学会了自己辨认图像;
  • 2015年,Google和微软靠GPU加速的深度神经网络,在ImageNet比赛中获得了多项击败工人辨识的准确度,人工智能的一个重大里程碑;
  • 2016年,谷歌旗下Deepmind团队研发的机器人AlphaGo以4比1战胜世界围棋冠军职业九段棋手李世石,这是人工智能历史上又一重大里程碑,AlphaGo在50块GPU上,训练了3.4亿步,用了3周的时间,AlphaGo的走棋网络是在176片GPU运行策略神经网络和估值神经网络。

从人工智能的简史可以看出,人工智能加速利器就是两个,一个是深度学习,或者称为为深度神经网络,另外一个就是GPU加速卡。因为训练深度神经网络的计算量非常非常大,例如大概需要30个Eflops的计算量,可以把一个人脸识别的模型训练出来,所以就非常需要除了CPU之外,单精度浮点能力特别强的计算的利器,这种利器就是GPU加速卡,深度学习和GPU是相辅相成缺一不可的。
阿里云HPC既提供Maxwell GPU加速卡,同时也提供深度学习性能优化和整套基础设施,下面介绍一下阿里云HPC在集团内和公共云上的深度学习实践。

三. 集团内深度学习实践

集团内有很多深度学习的业务场景,例如商品分类、拍照购物、商品风格的预测、商品质量的控制、反黄、人脸识别、图象搜索、OCR、标签识别、语音识别等。

阿里云HPC负责建设阿里巴巴深度学习集群,这个集群的业务主要是大规模深度学习训练、在线和离线预测等业务,我们负责该集群的统一化资源管理、调度和监控。目前集群的规模有上千片的K40和M40的GPU,通过Infiniband的网络互联。

同时我们也会对集团内的客户做深度学习方面的性能优化,有下面三个方面的优化。

第一点是系统层面,把单机的训练扩展到多机多卡的训练,以及提高图像、语音、视频等预测、分类的吞吐量;

第二点是针对GPU的微架构做优化。例如我们会对CNN卷积层做针对GPU微架构的优化,包括减少显存占用率,以及通过我们的性能优化工具优化;

第三点就是前面提到的优化工具的增强。我们会提供GPU极致性能优化工具AsKepler,目前支持SM35和SM37,它可以让用户自由的使用原生指令、自由的使用寄存器的映射、自由控制指令的调度,可以让我们更好了解微架构的特点,从而指导我们进行人工的优化或者编辑器的后端优化。例如,我们优化的2D卷积神经网络在Kepler架构上的性能世界第一,如图1所示,ourConv_sass 性能是cuDNNv2的2.1倍,是cuDNNv3的1.75倍。详情参考@长仁的文章:为什么要写一个GPU的汇编器 和 @念鸿的文章:Nvidia Kepler GPU上的性能极致优化。
              
                                                                   图1. 2D卷积神经网络性能优化

此外还有集团内其他客户机器学习的深度优化案例,包括阿里妈妈LR和MLR的优化、IDST参数服务器优化、神马语音识别优化、IDST语音识别优化等实践案例后面都会单独发文章介绍,敬请期待。

四. 公共云上阿里云HPC深度学习实践

4.1 阿里云HPC深度学习基础设施

首先介绍一下阿里云HPC为深度学习提供的整套基础设施,如图2所示,阿里云HPC通过物理机CPU+GPU+ECS提供计算服务,通过阿里云众多产品打通深度学习的上下游处理链路:

  • OSS,分布式存储

  • NAS,并行文件系统

  • ODPS,实现高性能计算和大数据计算结合

  • ECS,在线预测服务

  • CDN,图像、视频在线、离线预测

  • SLB,高吞吐在线预测

图2. 阿里云HPC基础设施

如图3所示是一个典型的深度学习流程:分为离线训练、离线预测和在线预测三个业务场景,首先把要训练的数据存储在OSS/NAS上,通过ODPS做特征的提取和数据标注,然后将特征数据和标注好的数据传给HPC做离线训练,训练好的模型通过OSS/NAS传给离线预测或在线预测,在线预测部分由SLB将用户的请求分发到ECS或者HPC上做在线预测、分类,将结果直接返回给用户或者通过CDN分发给其他用户,另外分类好的数据也可以反馈给离线做进一步训练,形成一个深度学习的闭环链路。                                                                  图3. 阿里云HPC深度学习闭环链路

4.2 阿里云HPC深度学习应用一键部署

如图4所示,阿里云HPC通过阿里云容器服务来一键部署深度学习应用,首先打好深度学习应用镜像并上传到Docker Hub上,然后创建容器集群,通过容器管理中心起Agent、Routing、Volume、Monitor、Log等容器,然后通过Agent容器按照容器编排从Docker Hub下载镜像并起应用服务容器;服务请求通过容器服务的SLB和Routing容器传到相应的应用服务容器上,应用服务处理和响应请求。通过这种方式实现深度学习应用的一键部署和弹性扩容。

                                                                  图4. 阿里云HPC深度学习应用一键部署

此外,阿里云HPC上通过主机或者Docker镜像提供整套流行的深度学习工具,包括Caffe,cuDnn v4,Digits2, Torch,Theano,Mxnet, Tensorflow等,应有尽有,并且开箱即用,方便之极。

4.3 阿里云HPC深度学习客户应用案例

阿里云HPC上有很多深度学习的实际客户案例,例如Dress+、深图智服、神州租车、新浪微博等。
Dress+是一家专门做视觉搜索引擎的公司,他们把电商上数千万的商品和网络视频等产品联系起来,比如在看优酷视频的时候,发现一件很喜欢的衣服,用鼠标一点就能跳到相应的电商产品如淘宝、天猫里面找到相同或者类似的衣服。
如图5所示是Dress+的业务架构图,他们通过SLB做多实例负载均衡,通过HPC和ECS做图像和视频的预测和分类。


                                                                                图5. Dress+的业务架构图

另外一个喜讯就是由于阿里云HPC的出色服务能力,Dress+的业务从AWS迁移到阿里云HPC上来了 :)
同时,我们也服务和支持很多集团内用户迁移到阿里云HPC上来了,如神马语音、IDST语音、搜索语言技术、搜索推荐、搜索OCR、搜索数据实验室、B2B翻译等团队。

五. 总结及展望

阿里云HPC致力于加速集团内和公共云上所有客户的人工智能应用的发展,希望更多的人了解我们的产品和我们这支团队的能力,如果有深度学习或者高性能计算方面的加速需要,我们会全力支持并加速您的业务发展速度!
阿里云HPC官网网址是:https://cn.aliyun.com/product/hpc

感谢阅读!
昀龙
阿里云HPC

阿里云HPC--人工智能加速利器相关推荐

  1. 在阿里云HPC和容器服务上,像梵高一样作画

    本系列将利用Docker技术在阿里云HPC和容器服务上,帮助您上手TensorFlow的机器学习方案 第一篇:打造TensorFlow的实验环境 第二篇:轻松搭建TensorFlow Serving集 ...

  2. 阿里云HPC助力新制造 | 上汽仿真计算云SSCC

    随着上汽集团与阿里云的合作开展,阿里云各项技术逐步深入到上汽汽车研发领域的核心业务实现落地.其中上海汽车集团股份有限公司乘用车分公司(以下简称上汽乘用车)与阿里云共建的仿真计算混合云就是新制造产业升级 ...

  3. 阿里云HPC助力新制造 | 上汽仿真计算云SSCC 1

    摘要: 据了解,借助阿里云,上汽乘用车实现了工程开发仿真能力升级,仿真计算效率提升了25%,使工程开发人员更加专注于产品设计和性能优化,打造出世界级产品的高品质.今年北京车展上全球首秀的概念车MG X ...

  4. 云-阿里云-百科:阿里云

    ylbtech-云-阿里云-百科:阿里云 阿里云,阿里巴巴集团旗下云计算品牌,全球卓越的云计算技术和服务提供商.创立于2009年,在杭州.北京.硅谷等地设有研发中心和运营机构. 阿里云创立于2009年 ...

  5. 阿里云张献涛:高性能计算发展的三大趋势

    12 月 12-15 日,第十八届 CCF 全国高性能计算学术年会(以下简称 CCF HPC China 2022)以线上的方式举行,国内外众多知名专家学者,以及高性能计算产业界的头部企业代表云上相聚 ...

  6. 深挖数据价值 阿里云栖开年大会报道

    本文讲的是深挖数据价值 阿里云栖开年大会报道[IT168 云计算]经历风雨,转身看到彩虹.在这个"化云为雨"的时节,造云大咖们角色扮演也逐步渐入佳境,或随需而动,或引领潮流.阿里云 ...

  7. 云计算出海!阿里云将成新加坡智慧国家战略“军师”

    1月16日早间,有消息人士透露,阿里巴巴的云计算子公司阿里云在新加坡与当地公共管理机构达成合作,成为新加坡智慧国家战略的"军师". 该项合作将包括三个层次,阿里云将为新加坡智慧国家 ...

  8. 阿里云城市数据大脑开发规范

    课程链接:阿里云城市数据大脑开发规范 本课程是阿里云城市大脑相关开发规范. 2016年10月13日,阿里巴巴集团技术委员会主席王坚在杭州云栖大会上面向全球发布城市数据大脑.城市数据大脑是一座城市的人工 ...

  9. 黑科技揭秘:如何通过阿里云超算,使得汽车仿真效率提升25%

    在汽车行业,过去有一句俗话,一辆车从设计到下线,"至少要11辆真实碰撞试验",今天,在现代化的汽车制造业,通过长期发展的设计和仿真软件,几乎所有的环节,都可以做到设计与仿真一体化的 ...

  10. 阿里Q2财报:阿里云势头猛进领跑全球

    本文讲的是阿里Q2财报:阿里云势头猛进领跑全球[IT168 云计算]11月2日晚间,阿里巴巴集团公布了2017财年第二季度(2016年7月1日至2016年9月30日)业绩,阿里云业务保持强劲活力,付费 ...

最新文章

  1. 认识HTML5的WebSocket 认识HTML5的WebSocket
  2. RedHat的yum源修改为CentOS的yum源
  3. 一个容易忽略的问题—Javascript文件加载的顺序
  4. QUIC实战(四) 设置应用开机自启动
  5. kmo检验和bartlett球形检验_互助问答59期:多期DID平行趋势检验以及因子分析累计方差贡献率...
  6. BackTrack4安装中文语言包
  7. FFT蝶形算法的verilog实现专题——基-4 频率抽取FFT算法matlab实现
  8. 淘宝网上卖F22飞机,一群强人提问
  9. c语言中shift f12组合建,C++学习1-(C语言基础、VS快捷键)
  10. user-scalable=no 控制手机版浏览器网页分辨率
  11. unity启动Logo大小的问题
  12. Excel无法另存为的解决办法
  13. 逃不开的安迪-比尔定律,在智能机器人时代该如何破解?
  14. 网络编程中常见错误码总结
  15. Retrofit2网络请求的path部分的“/”斜杠乱码为“百分号2F”,请求结果为400的请求无效
  16. [SSPU新生赛2019]Coda的题解集
  17. mysql数据库收缩
  18. 矩阵相似,矩阵合同,矩阵等价概念总结
  19. 记录自己学JDBC的第一天
  20. 机器学习__01__机器学习概述

热门文章

  1. python Tk()、Frame()、TopLevel()用法
  2. 机器学习中性能评估指标中的准确率(Accuracy)、召回率(Recall=TPR)、精确率(Precision)、误报率(FPR)、漏报率(FNR)及其关系
  3. 【生信进阶练习1000days】day8-OrganismDb.dplyr包
  4. vofuria的开发(1)
  5. ML--HMM(隐马尔可夫模型及python的实现1)
  6. 网络安全基础——破解系统密码
  7. Redis 的操作为什么是的原子性的详解
  8. Druid.jar包
  9. Spring 3整合Quartz 2实现定时任务:动态添加任务
  10. PHP生成QRCode二维码