全球最高性能云端AI芯片如何炼成?揭秘背后创新之法
智东西 文 | 心缘
智东西6月19日报道,今天,Habana Labs在北京披露了其首款云端AI处理器以及去年9月推出的首款云端AI推理处理器的性能和技术详情。
在数据中心的AI训练、推理和预测领域,NVIDIA GPU堪称是AI芯片“一哥”,在AI训练领域一家独大,几乎无敌手。
而就在本周,一家国外创企推出其首款用于云端训练的人工智能处理器(AIP,AI processor),名为Gaudi,号称其训练系统的处理能力比拥有相同数量的GPU系统高4倍。
这家创企名为Habana Labs,年纪不足4岁,去年才刚刚从神秘的“隐身模式”中脱离出来,而就在短短9个月的时间,它先后推出AI推理处理器Goya和AI训练处理器Gaudi,并且均比NVIDIA的旗舰产品拥有更好的性能表现。
它的两款芯片究竟实力如何,能否打破云端AI芯片领域的现有格局?它们如何达到这样的性能表现?今日,Habana Labs首席商务官Eitan Medina详细介绍了Habana Labs两款AI处理器的强大性能,以及实现这些性能背后所做的一系列创新。
一、训练性能达V100的4倍,今年下半年出样品
先简单介绍下Habana Labs,这家公司创立于2016年,总部在以色列,在波兰有一个研发中心,在中美有两个销售中心。它的目标相当直接,要成为未来在AI芯片领域的行业领导者。
其团队来自知名的处理器、DSP、系统设计、网络设计公司。产品包括软件和硬件研发,若干款AI产品已经发布。
去年11月,这家公司完成由英特尔领投的7500万美元B轮融资,累计融资约1.2亿美元。
Habana Labs首款AI训练处理器在本周刚刚推出,将于2019年下半年面向特定客户提供样品。
Eitan Medina说,Gaudi主要有两大亮点:一是拥有比GPU更高的处理能力、更优的性能和功耗;二是通过内置RDMA以太网处理单元,提供过去的芯片无法实现的可扩展能力。
1、创新架构
Gaudi的设计遵循流行架构——开放计算平台(OCP,Open Compute Project),支持FP32、bfloat16以及一些整数格式等典型用于训练的浮点格式,是目前业界单一处理器中性能最高的产品。
在ResNet-50模型中,此前业内最负盛名的NVIDIA Tesla V100每秒约能处理600张图片,功耗为300W;而Gaudi每秒可以处理1650张图片,功耗几乎是V100的一半。
一些芯片公司已经在其新一代云端AI芯片上采用了当下最先进的7nm制程工艺,不过,Gaudi选择的是16nm制程工艺。
Eitan Medina表示,Gaudi的超高性能表现不是通过工艺实现的,而是源于创新架构。
Gaudi处理器的创新架构可实现训练系统性能的近线性扩展,即使是在较小Batch Size的情况下,也能保持高计算力。
这张图展现了Gaudi的扩展能力,在ResNet-50训练中,同样约使用700个处理器,Gaudi的计算能力能达到V100的3.8倍。
Eitan Medina补充说,在不同规模的系统平台下,Gaudi的算力和功耗比均高于GPU。
因此,基于Gaudi处理器的训练性能可实现从单一设备扩展至由数百个处理器搭建的大型系统的线性扩展。
2、集成标准以太网,实现速度和端口数无限扩展
在AI训练中,可扩展能力主要与网络相关。
Gaudi处理器片上集成了10个100GbE以太网端口,每个以太网端口均支持RDMA over Converged Ethernet (RoCE v2) 功能,从而让AI系统、计算系统和存储系统能够使用标准以太网,在速度和端口数方面获得几乎无限的可扩展性。
RDMA是一种远端内存直接访问技术,具有高速、超低延时和极低CPU使用率的特点,最早专属于Infiniband架构,随着网络融合大趋势,出现RoCE和iWARP,使得RDMA得以部署在目前使用最广泛的以太网上。
目前其他可扩展处理器使用的是专用网络协议,而Gaudi使用的是通用以太网协议,这使得客户可以轻松将Habana硬件放进现有的数据中心,使用各网络提供商提供的标准以太网交换机来构建AI集群。
之前NVIDIA创始人兼CEO黄仁勋也在GTC 2019的主题演讲中,特意提到scale up(纵向扩展)和scale out(横向扩展),他认为scale up带来的回报并不十分有效,而scale out最好办法是在传统以太网上支持RDMA。
而被NVIDIA以69亿美元的高价收购的数据中心InfiniBand网络的绝对王者——以色列创企Mellanox,其核心技术正是RDMA。
Habana Labs团队对NVIDIA的这一观点非常认同,以此为基础,他们发展出和NVIDIA并不完全相同的路径。
NVIDIA Tesla V100支持RDMA需要通过PCIe交换,而Habana Gaudi单芯片直接与RoCE RDMA相连,此外Gaudi片上集成了10个100GbE RoCE RDMA,数量上比NVIDIA更多。
在Gaudi内部的10个以太网端口中,有7个用于连接其他的Gaudi处理器,余下3个端口则可以用于外部连接,这消除了对NIC的需求。
凭借Gaudi处理器,Habana Labs的客户亦可利用标准以太网交换进行AI训练系统的纵向扩展和横向扩展。
另外,与Habana的标准设计相比,基于GPU的系统依赖于专有的系统接口,对系统设计人员来说,这从本质上限制了可扩展性和选择性。
二、两种规格计算卡,媲美NVIDIA DGX-1的超级计算系统
Gaudi处理器配备32GB HBM-2内存,目前提供两种规格:
HL-200 – PCIe卡,设有8个100Gb以太网端口,可以直接替换现有服务器中的V100卡;
HL-205 – 基于OCP-OAM标准的子卡,设有10个100Gb以太网端口或20个50Gb以太网端口。
另外,Habana推出了一款名为HLS-1的8-Gaudi系统,这个系统中没有主处理器,配备了Habana自己的8个HL-205子卡、4个PCIe外部主机连接器和24个用于连接现有以太网交换机的100Gbps以太网端口,让客户能够通过在19英寸标准机柜中部署多个HLS-1系统实现性能扩展。
它的全交叉(all-to-all)连接允许在所有8-Gaudi处理器上进行训练,而不需要任何外接以太网交换机。
客户可以根据其应用需求选择不同CPU来进行AI加速,也就是说Habana Labs实现CPU服务器与加速系统间的解耦合,两者之间相互独立、各自更新升级,这样就为客户提供了更高的灵活性,使得客户可以自由选择CPU服务器,通过端口间的连线实现对接。
Eitan Medina介绍说,一个基于Gaudi HLS-1标准接口的全机架可提供前所未有的模块化和灵活性,有效支持AI计算架构日益增长的需求。
在系统内部,8个芯片传输无阻塞。对外,系统之间横向扩展,可以保证数据以最小阻塞比进行传输。
每个系统对外可以连接到一个单独的以太网交换机,这个交换机可以被进一步连接到其他机架,以形成拥有成百上千个Gaudi处理器的更大规模的训练集群。
HLS-1可以基于客户的功能组成不同的形态,客户可以选择设计自己的专属系统,在对内连接和对外可扩展连接之间形成一个特殊的平衡,以适配他们的工作负载。
每个HLS-1内置8个HL-205子卡,这与DGX-1中内置的V100数量相同,而除此这一共同点外, HLS-1和NVIDIA DGX-1超级计算机主要存在4处不同:
1、DGX-1使用私有协议NVLink,这种互联方式只能实现片与片之间的互联,不能实现跨越式连接; HLS-1的片上计算和标准RDMA RoCE使其可以同时做到纵向扩展和横向扩展。
2、DGX-1的内部互联存在阻塞,HLS-1的全交叉互联无阻塞。
3、每个DGX-14有4个对外的100Gb以太网端口,每个 HLS-1拥有24个对外的以太网端口。
4、DGX-1的PCIe在传输性能上有损失,而HLS-1和传输和管理走不同的线,不会出现复用情况,因此不会造成外部主CPU的传输瓶颈。
Gaudi是一款完全可编程且可定制的处理器,搭载了第二代Tensor处理核 (TPC) ,并集成开发工具、库和编译器,这些软件工具共同提供全面而灵活的解决方案。基于其DSP架构,Gaudi的软件协议栈拥有很大灵活性。
Gaudi的软件支持服务则与Goya基本一致,包括SynapseAI软件栈和开发工具,使用过Goya的客户可以无障碍沿用其软件开发工具。
SynapseAI软件栈是Habana的定制开发编译器和运行时,包含一个丰富的内核库和开放工具链,以供客户添加专有内核。
例如,16个Gaudi系统,对内的全交叉连接可以用50GbE以太网端口来实现,这样还能剩下32个100GbE的以太网端口用于对外,封装这16个Gaudi系统的盒子不需要额外组件,只需要用电缆线连接起来即可实现扩展。
多数深度学习训练使用数据并行化来构建,基于数据并行化,分层递阶约简成为可能,这种并行化数据处理器的优势是实现大规模计算,并且保证计算效率。
客户可以在每个盒子中集成以太网交换机,在盒子中,客户可选择通用以太网交换机,用交换机里的一些端口可以实现内部互联,其余端口用于对外互联。这种连接方式可以建立有1000片Gaudi的系统。
模型的并行化处理是把大模型分成若干个小模型,分给不同处理器来处理,在模型并行化中,最大挑战是处理器间通信带宽,Gaudi处理器做了很多通信端口,以保证充足的通信带宽。
模型并行化处理中,DGX-2提供的NVLink端口有限,最多支持16个GPU连在一起,而Gaudi可以做到成百上千个并行化模式处理。
这也是为什么RDMA被集成到芯片中,通过内置标准以太网接口,以及提供支持标准规范的模组,客户可以拥有更自由的选择权,未来训练的边界也被进一步扩展。
三、首代AI推理处理器:性能比NVIDIA T4高3倍
2018年9月,Habana Labs的首款AI推理处理器Goya发布,同期面向客户销售,并在去年第四季度实现量产。如今9个月过去了,Eitan Medina说,Goya仍然是市场上性能最领先的AI推理芯片。
AI推理市场正在不断增长,据Eitan Medina介绍,现在市面上还没有达到完全令人满意的产品,他们90%客户还是使用CPU做推理和预测,但这些客户也在寻找更高吞吐量、更低延迟和功耗、更小尺寸和更低成本的产品,而Goya能为他们带来这些性能的改善。
Goya处理器拥有两大特性:专为AI设计,软件可编程。另外它还有三大优势:高算力、高性价比、允许多个用户共享计算资源。
如图,在ResNet-50模型的推理测试中,Goya的性能远超过NVIDIA、赛灵思、英特尔等公司的AI推理芯片,几乎是NVIDIA Tesla T4的3倍。
另外,Eitan Medina表示,Goya的能耗比比T4高2倍,实时处理速度也比GPU更快。
据悉,在数据中心,3片Goya计算卡每秒处理45000张图片,等同于8个NVIDIA Tesla V100 GPU、169个CPU服务器所达到的性能。
而实现如此高性能的关键,在于Habana Labs研发的创新架构。
GPU和CPU面向通用计算,并不完全适合处理AI任务,但Habana的AI处理器架构完全为AI设计。它采用张量处理核心(TPC,Tensor Processor Core),拥有矩阵乘加的加速单元,支持FP32、INT32等混合精度数据类型。这种架构使得Goya能支持各种神经网络。
Eitan Medina认为,AI推理的关键是计算能力和延时,而数据中心计算中,批处理时不同的batch size会对这两点产生很大影响。
batch size即一次性喂给AI模型训练的样本量,同样的训练数据集,如果batch size大,训练的次数就会变少。小的batch size随机性更强,可能导致模型难以收敛;而通常batch size越大,梯度方向会越准确,但泛化能力也会变差,还会导致较长的延时。
而Goya能做到在一次迭代过程仅处理一张图,也就是batch size=1时,做到1秒处理7107张图片。
云计算厂商通常按单卡形式租给用户,但Goya有更低的延时,可以实现单卡被多个用户共享,保证用户在使用过程中的低成本、低延时,保证用户获得好的服务体验。
另外一个在AI推理中受关注的参数是推理的精度。
通常在推理和预测中,传统的处理器是通过浮点训练的模型做整型化,必然会造成信息丢失,影响最终精度。
而Goya采用混合精度架构,整个精度损失非常小,模型在量化过程中不需要微调或重新训练。
在推理和训练中,软件架构同样至关重要。很多数据中心的现有AI相关工作主要在CPU和GPU来完成,因此Habana面临的挑战是如何实现良好的迁移,使得客户之前基于其他处理器所做的工作能够快速部署到Goya平台上。
Eitan Medina称,很多人不相信Habana这样一家刚成立几年的客户能提供如此完善的软件环境,但在美国和中国,很多客户已经体验了Goya产品,并给出很好的反馈,验证了这一环境十分有效。
其软件栈叫Synapse AI,支持TensorFlow、Pytorch等多种主流AI框架。在上层,与各种主流框架有一个接口,和Habana Labs的图形编译器、库、运行时等相连接。其软件栈也支持客户定制化函数库,还提供优化客户定制化工作的工具,给客户尽可能大的灵活度。
另外,Synapse AI支持客户的训练在CPU、GPU、TPU、Gaudi等不同的处理器架构上实现,和Habana Labs的推理和预测产品之间相互独立。
Facebook开发了一款机器学习编译器Glow,而并在官网上标明Goya是第一款支持Glow编译环境的产品。
Facebook技术和战略总监Vijay Rao表示:“Facebook正在寻找开放的平台以进行行业创新融合。我们很高兴看到Habana Labs的Goya人工智能推理处理器为Glow机器学习编译器实现后端开源,并且Gaudi人工智能训练处理器采用OCP加速器模块 (OAM) 规范。”
Goya的另一个工作是将其驱动提供给Linux,用户只需下载最新Linux版本,就可以看到集成在Linux中的Goya。
结语:AI芯片创企共临问题:落地与生态
Habana Labs首席执行官David Dahan表示,AI模型训练所需的计算能力每年呈指数增长。因此,提高生产率和可扩展性,解决数据中心和云计算对算力的迫切需求成为至关重要的任务。
面向对高性能AI芯片拥有刚需的数据中心领域,Habana Labs已经将其产品组合从AI推理处理器扩展到AI训练处理器,以高性能、低功耗、可扩展、可编程等特性,提供又一种新的云端AI芯片选择。
但NVIDIA之所以能多年稳坐云端AI芯片的霸主之位,除了其GPU拥有和深度学习相契合的大规模并行计算能力外,其被CUDA软件平台也功不可没,正是GPU+CUDA的强强联手为NVIDIA积累起庞大的用户群,以此为基础建立越来越完善的生态系统。
Habana Labs的云端AI芯片在性能上已经有所突破,而下一步就是所有云端AI芯片创企共同面临的问题:落地、稳定增长、还有修筑起稳健的生态。