马上注册,结交更多好友,享用更多功能,让你轻松玩转社区
您需要 登录 才可以下载或查看,没有账号?立即注册
×
GPU当前是个非常有趣的产品形态,它已全然不止是图形计算设备这么简单;GPGPU的发展,以及随2012年AlexNet选择GPU对图像识别过程做加速,刷新机器图像识别正确率以后,GPU现如今是AI领域十分重要的硬件产品——而且覆盖了云端到终端,从training到推断inference。
GPU当前是个非常有趣的产品形态,它已全然不止是图形计算设备这么简单;GPGPU的发展,以及随2012年AlexNet选择GPU对图像识别过程做加速,刷新机器图像识别正确率以后,GPU现如今是AI领域十分重要的硬件产品——而且覆盖了云端到终端,从training到推断inference。
这两年我们也见到不少AI芯片厂商以更为domain-specific的方式,旗帜鲜明地表示GPU在机器学习领域存在相当的先天缺陷。不过GPU这个产品形态的有趣之处就在于,GPU在发展之初就是摩尔定律最尖端工艺的最佳受益者之一,甚至比CPU从中获益更多。因为GPU有足够大的市场规模,完全可以享用最先进制程。所以即便GPU的确在AI计算的效率方面不及AI专用芯片,但后者却很难通过走量来摊薄成本,也就难以承受最先进工艺的指数级成本攀升,只能退而求其次地选择更早的工艺。
而且GPU针对AI计算也在不断进化,比如GPU早就出现了专门的张量核心。有关这一点,我们还将在后续的文章中做更为翔实的分析。不过现在,GPU仍然可能在未来很长一段时间内,通过最先进的工艺制程对AI芯片实现一定程度的降维打击。这一点在云市场,尤其是AI training芯片领域可能显得尤为显著。这大概是现在GPU在这一领域仍处于垄断地位的原因,即便有大量市场参与者都在摩拳擦掌地准备狙击GPU。
燧原科技创始人兼CEO赵立东
燧原科技创始人兼CEO赵立东说:“垄断市场没有议价能力:包括价格昂贵和封闭生态的问题。客户在这方面的需求是实实在在的,我们期望燧原能够解决这样的痛点。我们想要推出高性价比、高能效比的产品,而且业务场景要落地,产品的利用率还要充分。”与此同时,“客户也都希望通过差异化来取得竞争优势,但中国国内的用户能够得到国外产品的技术支持都很有限,国内这些客户的差异化也很难做出来。我们期望以更靠近市场、靠近客户的方式,把这个市场做得更好。”
另一方面,燧原科技创始人兼COO张亚林说:“AI市场目前的痛点就在于,AI训练模型都被国外企业把持,以往始终是谷歌在引领的,尤其在谷歌TPU出现以后。中国的大公司只能跟随。所以中国的人工智能,更应当从上游着手,让中国人自己拥有、掌控更多的模型。”
这两点,大概就是燧原科技昨天发布云燧(CloudBlazer)T10,这款面向云端数据中心的AI training加速卡的原因。不过啃下这块市场着实不易,尤其是国内有勇气尝试突破云端AI training市场的企业并不多。
比较有趣的是,燧原科技这家公司,是2018年3月才成立的,AI芯片与加速卡产品研发开始至今不过一年半时间,产品就要开始量产了。很容易想见,产品最终成型离不开像Cadence、GlobalFoundries等合作伙伴的支持。比如AI芯片所应用的尖端技术,如超大规模芯片技术,2.5D封装,软硬件协同开发,都在研发期间得到了EDA提供商Cadence的全力支持。通过Cadence面向AI芯片设计领域定制的解决方案,以及针对系统级挑战的智能系统设计战略,产品的性能与开发时间都得到了有力保障。
不过除此之外,这款产品为何能够以这么快的速度面向市场?通过对这款产品的了解,我们尝试谈一谈燧原科技实现云端AI training垄断市场突破的可行性。
燧原科技创始人兼COO张亚林
AI芯片和加速卡,算力/能效如何?
还是先看一看产品本身。云燧T10加速卡是基于邃思(DTU)这颗AI芯片,这是个基于可重构芯片设计理念的芯片产品,我们在以往的文章中曾多次介绍过这类芯片[1][2]。那么首先就看看同时发布的这颗“邃思”芯片。其基本参数如下图所示:
这其中的部分参数是颇有看点的,首先是燧原科技表示“邃思”芯片的FP32单精度算力业界第一,达到22TFLOPs——这个算力的具象化包括了芯片上的32个可扩展神经元处理器(SIP),每8个SIP组合成4个可扩展智能计算群(SIC,SIC之间通过共享HBM做互联)。这颗芯片选择Cadence Tensilica Xtensa处理器作为MCU,用于AI core之间的调度——这是个可配置可扩展的处理器,也是实现低功耗/面积以及差异化功能的重要组成部分。
在BF16算力方面,“这是中国第一款能够完整支持BF16的芯片,算力也达到了86TFLOPs。”BF16(bfload16)格式浮点数越来越成为深度学习事实上的标准,谷歌TPU是比较早做出支持的。BF16更像是介于FP16和FP32的一种格式,和FP16一样也是16位,不过指数位与FP32一样。[3]
其存储子系统是现在AI芯片越来越常见的HBM2,位于整个芯片的上方,某些GPU厂商为了抑制带宽和延迟瓶颈甚至已经在用昂贵的HBM + 3D堆叠方案。邃思的这两颗HBM2都来自三星。其中的2.5D封装和HBM在技术上与更多合作伙伴的努力有关,如外围验证方案和Cadence就分不开,这一点在后文提及2.5D封装时还会再度展开。
这里的HBM2共2通道,每通道1024条链路,每条链路速率2Gbps,所以总共提供512GB/s的接口带宽——这是个比较常规的成绩。
实际上国外的某些AI芯片企业已经开始着力于大尺寸的片上SRAM来极大改善存储带宽问题,不过张亚林在接受采访时告诉我们:“训练的芯片不仅要覆盖现在的算法,还要考虑未来的算法。训练batch size就直接决定存储大小。片内存储放的越多,良率下降也就越快;良率低也就无法达到工业化。”
这颗芯片乃至云燧T10加速真正的亮点在互联能力上,属于燧原科技看家本领的“ESL片间互联接口”。“它支持4通道,每通道8条链路,每条链路25GB/s速率,总共提供双向200GB/s的接口带宽。另外还有PCIe 4接口支持,16条链路,每条链路速率16Gbps,双向64GB/s接口带宽。
除此之外,燧原科技公开这颗芯片的其他一些参数还包括主芯片尺寸480mm²,141亿个晶体管;采用GlobalFoundries的12nm FinFET工艺;2.5D“高级立体封装”;ESL高速片间互联。“完全从0到1,自主指令集、自主研发。”张亚林表示。
2.5D“高级立体封装”是燧原科技在发布会上的着力宣传点之一。除了上述HBM2所占空间外,下方的主芯片为480mm²。2.5D封装的interposer“采用65nm工艺流片,内含了十多层的金属层。它把上方的三颗die通过金属层互联在一起”,所以整体尺寸是768mm²。
张亚林有特别提到,“完成2.5D高级封装的都是世界大公司,国内除了海思,目前也没有其他家做到。”这里的2.5D封装技术,其外围验证方案采用了Cadence的SI/PI仿真解决方案。Cadence SI/PI仿真解决方案包括chip、interposer、substrate、PCB、backboard及连接器等结构的电源地和信号的建模与优化,构建系统级SI/PI仿真,实现电源、信号系统级sign-off。这里的系统级SI/PI仿真分析方法,在于帮助燧源的AI芯片发现不同结构对接带来的系统SI/PI问题,通过调整优化chip、interposer、substrate和PCB来避免SI/PI风险。
值得一提的是,就前述HBM2模块,燧原科技在2.5D interposer的HBM设计中,采用了Cadence XcitePI, PowerSI, SystemSI和System Explorer系统级建模和时域仿真工具,用于解决HBM总线的高速信号及电源噪声性能可靠性问题。电源方面,则运用Cadence Sigrity的电源Sign off解决方案;结合Voltus工具,优化了整个系统级的DC和AC电源性能。在25Gbps Serdes建模上,还采用了最新的3维电磁场建模仿真工Clarity,相较传统工具,有较大的效率提升。
云燧T10加速卡(CloudBlazer)
T10内部,其上核心部分就是邃思DTU
而基于“邃思”芯片的“云燧T10”加速卡如上图所示,这当然也是一款面向云端数据中心的AI training加速卡。张亚林特别谈到,这款板卡的外部ID设计也是由燧原科技一手打造的,
“流线型,往两边撑开的设计,我自己很喜欢这样的设计。而logo和品牌,都会是燧原科技在推断和训练两个系列产品上统一的形态,也就是CloudBlazer云燧。它代表的是我们做大芯片的决心,像一道火焰一样,冲开一切,打开市场。”
燧原在发布会上将云燧T10与“友商旗舰”进行了性能和能效对比。FP32单精度算力,如前所述是22TFLOPs,而“友商旗舰”为14TFLOPs。虽然燧原科技在会上从未提及这里所说的友商旗舰是哪款,不过从数据来看也很容易发现就是英伟达的Tesla V100 for PCIe。[4]
由于后者的最大功耗达到了250W,而云燧T10为225W,所以按照每瓦性能来计,云燧单就FP32算力数据来看是有较大优势的。不过需要指出的是,V100的CoWoS封装HBM2为四通道,而且两者在支持的计算类型上也有一些差别。
燧原给出的更多对比包括ResNet-50测试结果,云燧T10以518fps在性能方面领先了较大幅度;按照每瓦帧率来算,当然也是领先的(2.4fps/W vs 1.5fps/W)。
ESL互联方案
不过在我们看来,云燧T10真正的杀手锏,是以较低的成本实现弹性可扩展。回过头去看云燧T10的产品图,不难发现,除了底部的PCIe接口,顶部还有高速ESL互联接口(似乎总共有三个ESL port)。而下面的图片,包括了云燧T10的8卡互联。“基于浪潮的4U服务器打造。”
其上总共八卡,分成两组,每组四卡——这属于“单节点模式”。“每四卡上面有个白色背板,那就是我们的互联。机外的红色线缆,那也是我们的互联。通过背板和互联结构,我们实现了在八卡服务器上的互联,第一次将整个互联结构带入到了标准的4U服务器形态。”张亚林说,“这么做,我们希望能让算力变得普惠,让更多人用得起训练卡。”而传统走PCIe的方式,一个端口做互联,这个共享的PCIe端口很容易成为整个系统互联的瓶颈。
在单机柜模式下,“在整个机架上,由上至下的所有机架都采用这样红色的互联,都是我们的ESL互联结构。ESL互联也就完整解决了在同一个机架内所有的互联问题。”
我们早前曾撰文介绍过一些AI加速卡的扩展方式。典型如英伟达通过NVLINK和NVSWITCH来做多GPU互通突破PCIe带宽限制,不过这种方案在成本上很高,桥接、转换芯片设备的价格甚至比加速卡本身还要昂贵。当代一些常见的扩展方案也需要额外的芯片做多卡互联,尤其当扩展到大规模集群时[5]。
燧原在宣传中特别提到,ESL互联技术双向背板互联方案与“业内通用的InifiniBand组网”相比,相同互联带宽下降低了组网复杂度和成本,在ESL互联部分是省去了桥接器这类设备的开销——不过在整个互联过程中,未知在存在两条数据通路的情况下,PCIe在此是否还将同时扮演一部分互联角色。燧原的工程师告诉我们,在芯片间数据交互时,“我们可以通过协议封装,自动去寻找最优方案。”
进一步扩展至集群模式,整体结构如下图所示:
多卡集成并非简单相加,其间会有算力损失。随着服务器集群的增加,其线性度加速比是下降的。“可能两张卡的时候是纯线性的,达成1+1=2的效果,但在1024张卡的时候,一定不会是1024倍算力。”所以衡量其间的效率损失,也成为了解这种互联方案高效与否的关键。
按照同业标准,下面这张图的灰色曲线是理论比率:它描述的是随着使用更多的加速卡,从理论上来看最后将达成什么样的线性比例,最后理论上训练线性度加速比应该达到86%。“我们燧原自己的测试,其实已经非常接近理论值了,我们非常有信心在1024个节点内,保持接近86%这样的线性度。”
开放的态度搭建生态
在整个发布会进行过程中,给人留下深刻印象的,实则是两位创始人毫不避讳地提到了所有合作伙伴的名字,包括EDA提供商、IP合作伙伴、封装、测试、制造合作伙伴,HBM2提供商等等。这在以往的产品发布中是比较少见的。
举个例子,邃思芯片在项目开发过程中得到了Cadence端到端设计流程的支持。比如说采用Cadence数字实现及签核的整体解决方案。值得一提的是,据说借助设计实现工具Innovus,燧原在设计时减少了20%的芯片面积,减少6%的功耗;对signoff工具的内嵌应用,物理设计布局布线达成快速收敛自不必多说。 另外,Cadence Palladium Z1硬件仿真加速器也在芯片项目中起到了重要作用。所以张亚林也在发布会上表达了对众多合作伙伴的感谢。这大概是燧原科技产品“开放”态度的某种表现。
实际上,整个生态——无论是开发软件栈还是应用场景生态搭建——有时会比芯片、板卡硬件性能和能效比数字本身更重要。生态搭建成功与否和AI芯片本身的存亡是直接挂钩的。
燧原发布的这个软件栈平台名为TOPSRider“驭算”,其结构形态如下图所示:
其中的绿色部分是燧原的软件团队“独立开发”的。SDK层,“我们有自主的编译器、自主的库,自主的调度器,自主的工具链;支持基于LLVM的编译器工具链;支持基于GDB算子调试器和性能分析器;支持C/C++算子编程,“程序员编程的时候也会更方便”。”驱动这块,是将我们板子芯片和上层软件做接合“;”最底层就是我们的邃思硬件。
中间的Framework部分,完整支持TensorFlow,“明年上半年我们会支持PyTorch、MXNet、ONNX;客户在我们的产品量产之前,就能够平滑迁移。”
这些整体听起来和一般的AI芯片开发软件栈生态区别并不大,大部分AI芯片的开发软件栈也都在往这个方向走,包括高级语言的支持、编程易用性,以及对主流高层机器学习框架的支持。不过在燧原为客户提供的服务中,有一项特别值得一提。
“目前我们和客户的合作,有两个方面。一方面,我们会基于framework这一层,客户做开发能够很轻易地迁移到整个绿色的部分、整个平台中去。”张亚林说,“另一方面,我们针对客户,特别是非常大的α客户,做深度定制和开发。主要是SDK这部分,我们会开放库、加入更多的适配,对用户关心的主要算子和函数库做优化和加速,保证客户的核心应用能够直接穿透整个SDK,实现最好的硬件算力。”
后面这部分总结一句话就是SDK针对大客户的深度定制:这一点大概很多做云端AI training芯片的竞争对手也都在做,但并没有像燧原科技这样令其作为一个重要方向着力发展的,这实质上能够成为客户差异化竞争的重要优势。燧原展位的工程师告诉我们:“作为初创公司,我们目前会集中打造优势客户、产业重点客户。”这大概也是上述深度定制、差异化竞争策略的绝佳体现。
这些应该都是燧原定义“开放”生态和算力的组成部分。
一年半也能打造AI芯片?
回到本文开头的话题,上述这些成绩如何在短短一年半的时间内达成?这听起来似乎是个不大可能的任务,张亚林自己也在发言中提到,“我在A公司呆过,那里设计一款处理器要3年。”
这其中行业合作伙伴、供应商的共同努力和推动是一部分,一些细节化的,比如在EDA工具中,Cadence Palladium Z1的DRTL进行芯片性能评估,对DFT仿真环境加速,能够缩短软硬件开发周期;SI/PI仿真解决方案中,在25Gbps Serdes建模上采用3维电磁场建模仿真工具Clarity,相比传统工具的效率会有很大提升,也就缩短了项目周期等等……
另外几个重要原因,至少包括了两点。其一,虽然就时间线来看,从开始研发到完成实验室测试仅历时14个月,到产品发布的今天并开始量产历时20个月;但“团队经验其实已经非常丰沛,燧原有大量处理器方面的专家,很多人是从2000年就入行的。所以这不是奇迹,尤其中国经过近20年的发展,已经具备了相当多的行业人才。”张亚林说。比如选择GlobalFoundries,就是因为燧原的很多成员就来自早前GlobalFoundries的服务对象相关企业。
其二,资本的支持,尤其是每一轮投资者的长期投入。上海科技创业投资(集团)有限公司党委书记、总经理/上海集成电路产业投资基金董事长沈伟国则特别提到,在赵立东与张亚林创业之初,就明确了2019年产品要出炉,年底召开产品发布会,“每一步都按照当年的节奏在走。他们做到了他们所说的,这是很了不起的事”;武岳峰资本创始合伙人武平说:“说到做到,我们原来定好的时间表能不能实现,他们做到了。”
用赵立东的话来说,燧原是在“天时、地利、人和”的大背景下决定做云端AI training芯片,而且还要对标世界最顶尖的公司与技术。“天时”是指AI芯片,市场刚刚起步,算法、架构都还有很多事要做;地利是指中国有人口红利、海量数据、大量应用场景和市场机会,且国家和资本领域都在关注AI;人和则是指近20年来,上海集成电路发展人才储备充分,造就了燧原完整的团队,“架构、IP、设计、验证到最终量产,我们有着完整的团队和更多的实战经验。”
就当前云端AI training的市场局势来看,GPU仍是把持市场大头的主要产品。而且如文首所述,云端AI芯片需求变化、应用多样,有时要求对training与inference的同时支持,需“样样在行”。它对能效比、功耗的要求并不像终端AI芯片市场如此敏感。加上生态搭建问题,要撼动GPU在这一领域的地位并不容易。
不过至少燧原科技是真正找准了市场痛点的,总结包括1.当前GPU垄断市场,价格高昂、封闭生态,是市场客户需求解决的问题;2.中国国内有着AI芯片得天独厚的发展条件;3.AI芯片市场仍然刚刚起步,技术上也有充分的发展空间,让中国企业有资格与国际竞争对手做正面竞争。
赵立东说,燧原在后续发展定义的2.0阶段,是建立目标销售及服务支持体系,迅速拓展业务;持续产品的研发和迭代,构建云端训练和推理平台完整解决方案;加强国内外学术端的合作,引进高端人才,构建产业生态。这一步的落实,实际才是燧原科技成功的关键所在。 |