阿里云异构计算产品研发高级专家龙欣在2017年12月7日云栖大会苏州峰会上做了题为《阿里云异构计算平台——加速AI智能创新》的主题演讲。当今人工智能的发展迅速,阿里异构平台很好的应对了这一发展趋势。其中异构计算平台在布局和设计上的思考、阿里云的弹性GPU服务架构以及案例分析以及阿里云的FPGA云计算架构及场景使用等内容都是首次对外详细剖析,很有价值。
以下为精彩视频内容整理:
AI智能爆发关键因素分析
2015年出现的残差resnet网络,使得网络的参数和深度,产生了翻天覆地的变化,也使算法更加智能化。到2020年的时候商业上积累的数据将会是4.4个ZB,相当于现在的数据要翻10倍,这为大数据的发展积累了大量的学习材料。后摩尔时代的算力(异构计算)也增长迅速。数据,算法以及高速并行计算系统,这三者在一起产生化学反应,使得人工智能和深度学习在日常生活中的渗透。阿里云的异构平台主要是在异构计算方面构建了一个平台,并在企业做发展和推广。
阿里云的方案?
异构计算主要是指使用不同的计算单元组成系统的计算方式,常见的计算单元类型包括CPU、GPU、FPGA、ASIC等。因为GPU、FPGA和ASIC能满足人工智能对计算能力的要求,所以目前人工智能芯片格局的是:GPU,FPGA,ASIC三分天下。
人工智能的发展有两个业务阶段:第一个阶段是训练阶段,就是在后台去准备自己的业务模型;第二个阶段是推理服务,这是真正变现的阶段。这两个阶段对计算力、模型以及平台的要求是有很大区别。训练服务是计算密集型,只在垂直上扩展,使用离线服务,关注吞吐量,主要针对高精度浮点数据。推理服务是服务密集型,在水平上扩展,使用在线服务,对延迟要求比较高,主要是针对整型快速计算。
阿里云全新一代异构计算加速引擎是一个面向多场景的异构计算加速平台,它的使用涉及三个领域:
(1) 图形图像:影视渲染、3D设计、视频转码;
(2) 机器学习:人脸识别、视频识别、车辆识别、自动驾驶、机器翻译等;
(3) 科学计算:气象预测、油藏模拟、基因工程、计算金融。
为了能支持这么多的应用场景,异构平台使用了非常强健的基础设施,包括第二代的Apsara vSwitch网络,英伟达最新的v100服务器以及xilins最新的VU9 FPGA芯片以及第三代的分布式存储技术。
阿里异构平台在全球也做了布局。如果企业想在海外部署自己的业务 ,可以在该平台上把自己公司的环境快速搬迁到海外,完成部署,而且搬迁的速度是以天为计的,能节省时间,帮助企业快速把业务扩展起来。
在市场中,阿里云异构平台具有很强大的核心竞争力。因为它提供了高可靠的基础设施、企业级异构产品以及全面的安全防护;提供面向高性能计算、AI训练以及高速图形离线渲染;提供丰富的场景化产品、多种虚拟化技术以及强大生态支撑;提供巨大的资源池,支援全球部署业务以及灵活购买方式。
阿里云弹性GPU服务架构和案例分析
阿里云推出的竞价实例能进一步降低企业使用GPU的成本。当企业的业务足够健壮灵活,能按时释放和申请,通过一个灵活的模式去竞价,可以达到1.8折的折扣,获得使用廉价资源的机会。
目前阿里云异构计算与NVIDIA深度学习研究院实现DLI平台与内容实现全球合作。而且阿里云的人工智能初创企业扶持计算-风池计划,是给人工智能初创企业提出一个定向扶持计划,为了帮助企业更好的发展。
这个异构平台是与阿里云所有生态模块全打通的,这是它的核心竞争力。通过各种组件的组合,使得它具备扶持一个行业的能力,帮助企业在云上搭建一套业务系统。
GPU作为一种计算芯片,它的优势非常明显,具有实时高速、并行计算、浮点计算能力强的特点。阿里云弹性GPU服务(EGS)就是将阿里云的弹性计算和GPU高速的并行异构的加速器组合在一起。EGS具备GPU所有的加速的能力,兼具阿里云弹性计算的特点,可适用于深度学习、视频转码、图形渲染、科学计算等场景。
EGS有两种计算实例:可视化计算实例和高性能计算实例。可视化计算实例有一种:GA1共享GPU,它能提供更细粒度的GPU实例,降低使用门槛和成本,而且能为可视化计算提供很好的性能保证。高性能计算实例有四种:GN4独享GPU,提供通用计算实例;GN5独享GPU,具有深度学习和高性能计算的强大算力;GN5i独享GPU,是专为深度学习推理现在服务定制的实例;GN6独享GPU,是专门为深度学习训练定制的实例。
下面介绍两个典型的EGS应用:
(1) 弹性GPU实例加速阿里云图像识别服务
这个实例把训练和推理放在阿里云的EGS服务之上,同时利用网络互通的能力以及离线训练和在线训练去完成在线图像识别的服务。
(2) 弹性GPU实例加速阿里云视频转码服务
在这个实例中异构平台只处理在线服务,企业把离线训练放在自己的模型中心,在线服务部署在阿里云上。像实时语音翻译,对时延有很强的的要求。当用户说完的时候,响应的时延不能超过几个毫秒,否则会出现卡顿的情况。这时候对时延要求高,对计算力要求低。
从图中可以看出以太网络随着包的增加,是一个指数的提升,而阿里云的基于升龙服务器的超级计算集群能保证在很大的传输数据字节的情况下,会减少时延的情况,提供非常低的时延,并且依然保持线性的伸缩。这个计算机集群还能实现扩容和性能的线性提升。
异构平台还提供了一些增值服务,包括弹性机器学习、专门针对广告推荐的XDL框架、还有EHPC平台,都是为了帮助平台上的一些创业公司或者是刚刚进入这个领域的公司,能迅速把自己的模型部署在异构平台的硬件底层之上,而不用去关心这些平台的运维。这能节约这些公司的运维成本,缩短上云时间以及减少上云的准备。
FPGA云计算结构和场景分析
FPGA与GPU相比,它的编程门槛更高,但是GPU的算法是固定的,对于非标准的数据来说,GPU就不那么适用了。随着数据精度的一路往下降,GPU就显得跟不上了。这时候FPGA加速器就应运而生,因为它的算法不固定,而且最低可以处理一个比特的数据。所以FPGA的硬件可编程和硬件加速能力就得到了越来越多云厂商的青睐和部署。
阿里云也在部署了自己的FPGA服务器——FPGA as A SERVICE(FaaS),它有三个设计目标:
(1) 引入FPGA作为弹性计算产品输出。实现FPGA硬件的平台化和系统化,实现FPGA应逻辑的统一接口,并且符合云安全运行环境。
(2) 在云上打造整套FPGA开发环境。实现统一的云上开发平台以及安全的IP部署渠道。
(3) 建立FPGA IP生态和市场。与第三方合作,开发云上的FPGA IP;与集团合作,把FPGA加速业务通过云产品输出。
FaaS包括三个组件:硬件基础设施,包括FPGA云服务器,硬件加速开发,部署平台(Intel、Xilinx);云上配套开发环境,包括厂商配套软件(Quartus、Vivado),第三方EDA软件(仿真、模拟);FPGA IP开发生态,包括金融计算、基因计算、压缩加解密、硬件仿真设计、深度学习(预测/训练)等。这样FaaS能提供全面加速平台,在FPGA的IP开发、部署和发布的各个环节提供高度的兼容性和一致性,并且通过FPGA IP市场配置和扩大FPGA生态。
上面是FaaS的FPGA IP的分发流程。FPGA IP的开发等同于芯片开发,一个最核心的部分就是如何保护它的IP。IP的分发要保证不能让对手、消费者拿到企业的源代码。阿里云做了硬件的隔离,使用户只有使用加速能力的权利,而不能拿到企业的核心加速库。
异构平台的FPGA云上开发环境能保证企业在线上和线下有一致的体验,保证合企业和IP开发者能快速的上云,把库快速推出,在云或者FPGA市场上输出给用户。
现在有很多的FPGA镜像市场加入到了阿里云中,包括硬件仿真、金融算法、基因、深度学习、压缩和加解密等,这丰富了FaaS的使用场景。
下面介绍两个FaaS的典型应用场景:
(1) 时序数据库(HiTSDB)
目前在大数据领域中,超过一半的物联网(IoT)设备监控系统,企业能源管理系统(EMS),生产安全监控系统,电力检测系统等行业使用时序数据。阿里云HiTSDB是一种高性能,低成本,稳定可靠的在线时序数据库服务。利用FaaS高并行度的优势,提升HiTSDB的数据处理能力。目前它的单路数据吞吐性能是单核CPU的30倍以上。
(2) 数据压缩(GZIP)
GZIP是一种文件压缩标准,其核心的算法是Huffman编码和LZ77,能大幅度的减少文件本身大小和占用的存储空间,已经成为当今Internet上普遍使用的数据压缩格式。阿里云FaaS平台支持OpenCL以及RTL两种开发流程,在同样压缩比的情况下,其吞吐能力较CPU有10倍的提升。
以上由云栖社区小组younger123整理,毛鹤校审,郭雪梅编辑。