×
嵌入式 > 嵌入式开发 > 详情

带您了解超算黑马—日本Fugaku背后的故事

发布时间:2024-05-07 发布时间:
|

在6月22日,国际超算大会发布最新一期的全球超算TOP500榜单。其中,日本超算“富岳”(Fugaku)超越美国“顶峰”(Summit)登顶榜首。作为史上第一台基于ARM芯片的全球超算冠军,富岳虽然其性能达到上届冠军“顶峰”的2.8倍,但仍然属于十亿亿次级别超算。


《日本经济新闻》认为,此次日本之所以能夺取第一,原因之一在于目前超算正迎来升级换代时期,日本比中美更早地投放新一代机型,但由于在资金实力上处于劣势,日本很难和中美展开同场竞技。而在背后,则是富士通的48核ARM芯片A64FX。其实多年以来,富士康在这个领域都有深入的研究。在本文我们回顾一下,富士通的这颗芯片凭啥让富岳走向了世界之巅。富士通A64FX采用台积电7nmFinFET工艺制造,集成87.86亿个晶体管,但只有596个信号针脚,内部集成52个核心,包括48个计算核心、4个辅助核心(都完全一致),基于ARMv8.2-A指令集,支持SVE 512位宽度SIMD,峰值性能2.7TFlops。所有核心分为四组,每组13个,共享8MB二级缓存。


互连总线采用6D/Torus Tofu,双链路、10个端口、带宽28Gbps。输入输出支持16条PCIe 3.0。外部搭配四组共32GB HBM2内存,峰值读写带宽1TB/s。根据Technews的报道,整体来看,无论从哪个角度观察,这应该是目前最高阶的ARM指令集相容处理器了。

其实Fujitsu早在2018年夏天的处理器业界盛事IEEEHotChips30,就公开A64FX的技术细节(其中部分内容更在4月就先行披露),本质算是「电脑的语言」指令集架构从SPARC-v9转换成ARM-v8.2-A的SPARC64fx处理器(因衍生于高阶伺服器专用的SPARC64,也继承了诸多类似特色,如大型主机等级的资料可用性),采用台积电7纳米制程生产,主记忆体使用近来因高阶绘图芯片逐渐普及的HBM2,和运算核心由台积电的2.5D封装CoWos技术包成一颗,毋需外部的记忆体颗粒。

讲更精确点,Fujitsu A64FX是「针对超级电脑量身订做的ARM指令集系统单芯片」(System-on-Chip,SoC),其概念更可追溯于2004年11月,一举赶下雄踞「世界最强超级电脑王座」超过两年半(2002年3月到2004年11月)地球模拟器(Earth Simulator)的IBMBlueGene/L,体积仅有容纳1,024个运算节点和8TB主记忆体的16座机柜,反观地球模拟器动用640个运算节点,总共5,120颗NEC SX-6向量处理器和10TB主记忆体,多达320座运算机柜,彰显了追求建造速度的独到思维与异质功能融合的潜在威力。

后来劳伦斯利佛摩国家实验室(LawrenceLivermoreNationalLaboratory,LLNL)的BlueGene/L持续扩充到104座机柜(478TeraFlops,峰值596TeraFlops),2008年6月被同样出自IBM的洛斯阿拉莫斯国家实验室(LosAlamosNational Laboratory,LANL)的Roadrunner超越,稳占Top500首位长达3年半之久。后者是人类史上第一台效能达1PetaFlops的超级电脑。

那年刚好微处理器论坛(Microprocessor Forum)首次在台湾举办(新竹烟波大饭店),IBM也在活动议程里,充分阐述BlueGene/L的技术细节与设计理念,笔者有幸坐在台下躬逢其盛,富岳和Fujitsu A64FX则让笔者回忆起历历在目的往事。

于「日用品」堆砌超级电脑以外的另类系统单芯片路线

「世界最快的超级电脑」不但是国家科技能力的重大象征,更是科技强权之间的国力较量,根据国家的Top500进榜数与总效能「圆饼图」,比重与趋势或多或少反映了国家的影响力。前述的富岳超级电脑,相关费用总计1,300亿日圆,其中1,100亿日圆由日本纳税人买单,日本政府「宣扬国威」的强烈动机,不言可喻。

自从个人电脑与丛集运算环境(Cluster)普及后,超级电脑业界逐渐从特别客制化且量少价昂向量处理器、系统控制与记忆体芯片,朝向采用市售的「日用品」(Commodity)或系出同源的衍生产品(如nVidia的高阶运算用GPU),除了降低购置与维护成本,亦可进一步提高超级电脑的可靠性与可用性。也因此,Top500清单早是满满一整排英特尔处理器与nVidia加速卡(与少少的AMD产品,以及根本没有未来的英特尔Xeon Phi),偶见IBM的高阶Power处理器与Fujitsu的SPARC64fx。毕竟不计成本导入特制化零件与特殊半导体制程(甚至像Cray-3和Fujitsu VPP500还用到砷化镓这么独特的材料)的「高阶试作品」,自然远不如消费性市场随手可得的「成熟量产品」可靠。过于特殊的专属规格处理器,也限制了应用软件和开发平台的选择性,提高开发软件的时间与成本。反之,投奔「开放规格」,即可享受到更多样化的开源社群资源,并因更频繁的技术交流,而加速技术演进。但超级电脑市场较量的重点,并不只限于帐面效能和耗电,「研发时程」和「建造速度」也同样举足轻重。这也是IBMBlueGene/L在十多年前可在超级电脑领域独领风骚的秘密:延续现有Power处理器的研发成果,打造高度系统单芯片化的运算节点,实现更高的空间利用密度和更快的系统组装速度。


FujitsuA64FX更承袭相同的思维,并藉由台积电被众多客户千锤百炼后的成熟制程、研发资源丰富的ARM生态圈、拜显示芯片市场之所赐而便宜可靠的HBM记忆体,青出于蓝胜于蓝,相隔近16年,重现系统单芯片一次夺下Top500榜首的荣景。

大处着眼,小处着手

相信熟悉超级电脑的读者或许会想起,当时那台IBM与Livermore实验室合作的BlueGene/L测试机,并非彻底施工完毕的超级电脑(这让日本人颇不以为然),但在Livermore国家实验室,确实有部分应用程式跑在上头,并打败了地球模拟器保持的纪录。问题来了,为何IBM可以用这么快的速度(当时可是震惊世人),建好一台世上最快的超级电脑?2004年,BlueGene/L可谓世界最大的嵌入式微处理器集合,揭示了「大处着眼,小处着手」观念,将系统单芯片的价值,从微型系统带到极大规模的超级电脑,技术核心为重新设计后的双核PowerPC 440,具低耗电量和低发热量等特点。利用诸多今日我们耳熟能详的系统单芯片特色的BlueGene/L,有以下特点:超级省电:相同的运算量,这台BlueGene/L耗电量仅NEC地球模拟器的二十八分之一,自然也降低了发热量。简单清楚的系统架构:BlueGene/L不再有一大堆纠缠如「新竹米粉」的五颜六色线路和多如牛毛的网络汇流排控制器,易于安装与维护。快速完成产品设计:利用现有研发成果,透过系统单芯片整合额外功能,不必重新设计每个元件,可迅速兜成产品。即使这算是「专属规格芯片」,但意义却和过去不惜血本的烧钱做法截然不同。BlueGene/L的架构相当单纯:每颗时钟700MHz的处理器芯片,包含两个倍增浮点运算器的修改版PowerPC440核心与时钟350MHz的4MB L3快取记忆体(可设定为系统记忆体)。


两颗处理器芯片组成一张运算卡(Compute Card),上面附有512MB容量DDR记忆体,耗电量只有20W。

16片计算卡构成一片节点卡(Node Board),32个处理器芯片(64核心),提供180GigaFlops理论计算能力,8GB记忆体。

32片节点卡装在同一台机箱,提供5.7TeraFlops与256GB记忆体。

整个系统最大组态为65,536个节点卡(64个机箱),当全部处理器都设定成计算模式时,有高达360TFlops的峰值运算量(2004年底那台是70.72TeraFlops)和16TB记忆体。

所谓的超级电脑,就是指具巨大平行运算量的系统(有别于追求顶级可靠性和极致软件相容性的商用大型主机),大多数平行处理程式,都必须在执行每个小单元,参考之前的单元计算结果,或是传送结果到其他执行单元,带来巨大的资料传输量。超级电脑的开发者几乎都将一半精力耗费在资料传输网络的设计。BlueGene/L系统组成极端干净,处理器芯片内建5种功能相异的网络控制器,让不同类型的工作分而治之,只需要板子上的连接点组成整个系统,你也看不到拉来拉去的排线和到处安插的汇流排网络控制器:

  • 3D Torus网络:每颗芯片有6个方向传送资料到整个系统,具流量监控、计算最佳传送路径的功能。

  • Collective网络:用来管理控制。

  • 处理中断与系统问题的低延迟高速网络(GlobalBarriersandInterrupts)。

  • 用来进行一般I/O和档案存取的Gigabit乙太网络。

  • 用来控制开机与设定的控制网络(Control Network)。

为何IBM要让BlueGene/L同时用5种网络架构?起因于IBM并未为了这台「速食」超级电脑设计专用作业系统,直接修改Linux来用,并BlueGene/L是每颗运算节点(一颗处理器)都是独立电脑的「Multicomputer」型态,单靠3D Torus网络不足以保证在最短时间内即时传送所有资料,特别是和计算无关的控制管理讯号,所以动用多种拓朴网络以保证面面俱到,是很正确的手段。同场加映更夸张的设计:Sun曾竞标美国国防部先进研究计划署(DefenseAdvanceResearch Projects Agency,DARPA)于2002年初开始的HighProductivityComputing System,日后更名为PetaFLOPS的超级电脑计划(略早于NEC发表地球模拟器),提出惊世骇俗的「Hero」计划,引进「Proximity Communication」研究成果,透过芯片彼此相邻的「超高速无线传输」(别怀疑),一举解决频宽延迟的瓶颈和系统组装的麻烦。很可惜这案子由IBM和Cray击败Sun共同得标,无缘让世人目睹这令人啧啧称奇的世界奇观。

虽然超级电脑的可靠性要求不如商业大型主机严谨,但看在巨大资料传输量的份上,假若自己的家用个人电脑可能一年内因一次讯号错误当机,套在超级电脑就可能变成一小时一次了。也因此,IBM在BlueGene/L引入许多除错技术,由小到大,从芯片(所有记忆体皆受到ECC保护以修正单位元错误)到系统(所有节点和网络都有自我错误监测,而最重要的3D Torus网络则动用超过4种数学除错方式以保障资料传输的正确性)。当然,低发热量的系统单芯片,也降低超级电脑因过热而不稳的可能性。

承继IBMBlueGene/L精神的Fujitsu A64FX

这些年来,伺服器大厂纷纷放弃开发自家处理器,改投向「开放系统」的怀抱,但Fujitsu仍持之以恒研发高阶处理器,如GS系列大型主机、Unix伺服器的SPARC64、因2011年「京」(K-Computer)超级电脑专案诞生的SPARC64fx。

让SPARC64fx转战ARM指令集的A64FX,堪称三者集大成,也让ARM指令集相容处理器,一举登天,拥有商用大型主机(Mainframe)的高可靠度、高阶伺服器的高效能,与超级电脑最需要的低能耗比,身为「后京」(Post-K)时代的日系超级电脑心脏,性能目标是达到2011年「京」的100倍。富岳抢下Top500榜首就是成果,且计划进度还比表订的2021年量产出货提前甚多。A64FX主要特性如下:台积电7纳米FinFET制程,87.86亿电晶体,台积电CoWos2.5D封装包4颗8GB容量HBM2记忆体,兼顾缩减面积与提升记忆体频宽。

基本上是替换指令集的SPARC64XIfx,从核心微架构到基础结构皆大同小异,但系统记忆体改用包在一起的32GB HBM2,却能大幅精简空间。

48个计算核心和4个处理I/O作业的辅助核心,切成4块CMG(CoreMemoryGroup),每个CMG有13个核心(12运算+1辅助I/O)、8MB L2快取记忆体、8MB HBM2记忆体。CMG规画也与SPARC64XIfx大同小异,仅核心数略有差异。

SIMD浮点运算「顺势」使用ARM官方制定的SVE(ScalableVectorExtension)指令集,理论浮点运算性能达到2.7TeraFlops,是前代SPARC64XIfx的2.5倍,资料格式也支援人工智慧需要的FP16与INT16 /8。

ARM的SVE不仅「比英特尔AVX-512更富有向量电脑的传统风味」,也有个有趣的MOVPRFX指令,用来弥补ARM迈进64位元后,为了提供32个暂存器(需要5位元指定一个暂存器,4个就是20位元)牺牲掉的FMA4四运算元浮点乘积和(A×B+C=D)。一旦执行三运算元的FMA(A×B+C=C),会覆盖掉一个暂存器的原始内容。MOVPRFX指令可预先经由前置码(Prefix),「更名」运算目标暂存器,以保留其内容。而A64FX的内部执行单元则会将接连的MOVPRFX和FMA3两个指令合而为一,变相实作FMA4,掩盖执行两个指令的额外延迟。

高可靠度则比照SPARC64fx办理,大型主机等级的资料可用性,让整颗芯片大部分都受到ECC单位元错误修正和Parity纠错机制保护。

多处理器汇流排采用演进于「京」超级电脑的第三代「Tofu」(豆腐),6D Mesh/Torus结构。

和BlueGene/L一样高度模组化设计,一个机柜框体(Rack)可置入384颗A64FX,18432个运算核心,单机柜理论效能超过1PetaFlops。

富岳由396个机柜框体组成,152,064颗A64FX,Top500测定性能为415PetaFlops。

「热情拥抱现成资源」的弦外之音

Fujitsu和理化学研究所在2019年4月15日签订制造出货安装合约,11月富岳试作机拿下Green500第一名,12月2日就开始出货6个机柜框体,全数396个在2020年5月13日全部搬入理化学研究所,速度真的很快,当年IBMBlueGene/L的「速食」风格,在Fujitsu A64FX也一览无遗。况且,Fujitsu还享用那时IBM还体验不到的「完整IP授权、最佳化电子辅助设计工具与相关函式库、专业晶圆代工」三位一体的成熟产业生态体系,大量引用「现成资源」加速产品研发与验证,降低成本,不限硬件,一并拥抱蓬勃发展中的ARM软件资源,在「沿用市售标准品」和「拼死硬干特规货」中取得平衡点。这是Fujitsu在高效能运算处理器的「语言」,放弃SPARC转向ARM背后最重要的弦外之音。最后,顺带一提,如果台积电继续维持制程优势,英特尔真的还有机会追上来吗(官方预定2021年7纳米、2023年5纳米、2025年3纳米、2027年2纳米、2029年1.4纳米)?还是昔日傲视世界的半导体制造能力,将就此遭到毁灭性的打击?值得拭目以待。



『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
单片机汇编语言 如何实现点亮熄灭二极管