当地时间6月22日,英特尔(Intel)官方宣布,美国能源部阿拉贡国家实验室已经完成基于英特尔CPU及GPU的新一代超算“Aurora”的安装工作,今年晚些时候上线后将提供超过2 exaflops(2百亿亿次计算每秒)的FP64浮点性能,将超越隶属于美国能源部橡树岭国家实验室的“Frontier”,有望成为全球第一台理论峰值性能超过2 exaflops的超级计算机。
据介绍,Aurora 超级计算机由英特尔、惠普企业 (HPE) 和美国能源部 (DOE) 合作,旨在大规模释放高性能计算 (HPC) 三大支柱的潜力:模拟、数据分析和人工智能 (AI)。该系统配备了所有 10624 个刀片服务器,每个刀片由两个英特尔Xeon Max 系列 CPU(至强Max 9480) 和六个英特尔 Max 系列 GPU 组成,使得Aurora 超级计算机总共拥有 63744 个英特尔数据中心 Max 系列 GPU 和21248 个英特尔Xeon Max 系列CPU。
英特尔Xeon Max CPU中的 56 个内核均为 P 核,可提供 112 个线程和 350W TDP。它采用基于 EMIB 的设计,分为四个集群。它还具有 64 GB 的 HBM2e 内存,分为 4 个 16 GB 的集群,总内存带宽为 1 TB / s,每个内核的 HBM 都超过 1 GB。在性能方面,英特尔称,Xeon Max配备的高带宽内存足以满足最常见的HPC工作负载,与旧的英特尔至强 8380 系列处理器或 AMD EPYC 7773X 相比,可在某些工作负载中提供接近 5 倍的性能。
英特尔Xeon Max CPU中还包含 20 个加速引擎,主要是用于 AVX-512、AMX、DSA 和英特尔 DL Boost 工作负载。据称,英特尔在 MLPerf DeepCAM 训练中的性能比 AMD 7763 提升了 3.6 倍,比 NVIDIA 的 A100 提升了 1.2 倍。
至于英特尔MAX GPU实际上就是之前的Ponte Vecchio芯片,使用了英特尔有史以来最先进的封装技术,拥有超过1000亿个晶体管。其总共有63个模块,包括了16个Xe-HPG架构的计算芯片、8个Rambo cache芯片、2个Xe基础芯片、11个EMIB连接芯片、2个Xe Link I/O芯片和8个HBM芯片、以及16个负责TDP输出的模块,通过EMIB与Foveros 3D封装中整合在一起。其中最强的MAX 1550配备了英特尔性能最高的OAM模块,拥有128个Xe核心和128GB的HBM2e内存,TDP为600W。
此外,Aurora 系统还配备了10.9PB的傲腾持久内存。同时正如前面所介绍的,每个Xeon Max CPU内还封装了64 GB 的 HBM2e 内存,这也意味着21248 个英特尔Xeon Max 系列CPU内的 HBM2e高带宽内存容量达到了1.36PB;每个 Max GPU内最高还封装了128 GB 的 HBM2e 内存, 63744个Max GPU内的HBM2e内存容量达到了8.16PB。三者合计达20.42PB内存。存储方面,Aurora 集成了超过 1024 个存储节点(使用 DAOS,英特尔的分布式异步对象存储技术),并利用HPE Slingshot高性能结构,以每秒31TB的总带宽提供220PB的总的存储容量。
以上所有的CPU、GPU、内存及存储等组件都将通过英特尔的oneAPI软件互相链接。借助 oneAPI,开发者对整个系统中的节点进行编程,无需更改代码,应用程序可以有效在 CPU 和 GPU 上运行,为开发人员提供无缝系统集成。
英特尔表示,Aurora将充分利用英特尔Max系列GPU和CPU产品系列的强大功能。Max系列GPU的早期结果旨在满足动态和新兴HPC和AI工作负载的需求,在现实世界的科学和工程工作负载上显示出领先的性能,在OpenMC上显示出高达AMD MI250X GPU性能的2倍,以及接近线性扩展到数百个节点。在许多现实世界的HPC工作负载(如地球系统建模、能源和制造)中,Intel Xeon Max系列CPU比竞争对手具有40%的性能优势。
目前世界第一的超级计算机是隶属于美国能源部橡树岭国家实验室的“Frontier”,最大性能每秒1.19百亿亿次浮点计算,峰值性能可达1.68百亿亿次,其采用的是正是AMD EPYC 7A53 64核心处理器,以及Instinct MI250X GPU加速器。随着“Aurora”的安装工作完成,今年晚些时候上线后将可提供超过2 exaflops的性能,成为全球最强的超级计算机。
复合类新产品出现
AMD、英特尔和英伟达三巨头,业已推出多款整合“XPU”的产品。那么,这会是超算或企业级处理器市场未来的发展趋势吗?
在2022年的英特尔投资者大会上,英特尔展示了一个全新针对AI和HPC市场研发的、代号为“Falcon Shores”的全新芯片。它和英特尔现有的CPU、GPU有所不同,英特尔称其为“XPU”。所谓“X”,是“混合”的意思,英特尔宣称整个Falcon Shores将拥有可扩展的、可根据需求配置的CPU和GPU部分。在英特尔的计划中,这种复合类型的XPU,将拥有比现在产品高5倍的每瓦特性能、内存容量和内存带宽。
根据英特尔规划,Falcon Shores将在2024年推出,采用英特尔的20A或者18A工艺。英特尔将采用Chiplet技术,以不同的Tile也就是功能片的形式,来实现对CPU、GPU以及其他加速模块的灵活配置,以更大程度地贴近客户的需求。
随后AMD在CES 2023上发布了全新的数据中心处理器Instinct MI300。作为面向下一代数据中心的超大规模处理器,它包含了13个Chiplet芯片和高达1460亿晶体管,是AMD有史以来推出的最强大的芯片。
在AMD的官方介绍中,Instinct MI300将在2023年下半年推出,整体架构包括24个Zen 4核心的CPU和CNDA 3架构的GPU,超大容量Infinity Cache,还有高达8192bit、128GB容量的HBM3超高带宽内存。此外它还支持第四代Infinity Fabric总线、CXL 3.0总线、统一内存架构以及全新的数据格式等。AMD官方宣称对比上代产品的性能提升高达8倍,可以满足百亿亿次计算的需求。
AMD的产品实际上是专为AI或者HPC场合设计,它将CPU、GPU以及一些加速器融合在一起,希望能够带来效能、性能方面的飞跃式提升。与此类似的是,英伟达在这方面也做出了自己的努力。不过它并不是依靠Chiplet或者其他的技术,而是直接将两个全新的独立芯片——Hopper GPU和Grace CPU布置在一个PCB上,并采用自家的NVLink实现芯片到芯片的高带宽互联(高达900GB/s),同时配合了高带宽的HBM3存储和LPDDR5X等。英伟达宣称,在高带宽IO以及NVLink网络的支撑下,这款名为NVIDIA Grace Hopper Superchip的芯片(将在2023年上半年发布),将为运行TB级别数据的应用程序带来高达10倍以上的性能提升。
显然,随着AMD、英特尔和英伟达全新一代产品的发布,下一代超算的形态可能会发生明显的变化。现在我们看到超算Top 500排行榜上,产品CPU、GPU的型号都是很明确的,比如AMD EPYC处理器、英特尔Xeon某型号,GPU则是英伟达H100或者其他型号等。但是下一代的超算,如果采用Falcon Shores或者Instinct MI300的话,那么CPU和GPU的具体型号就可能不存在了,统计时就只能标注CPU或者GPU的核心数量了。
走向DSA化的超算
从多款产品的发展情况来看,集合CPU和GPU的力量在单一芯片上,并且拥有诸如统一内存寻址这样的特性成为趋势。相比传统的PCIe总线连接CPU和GPU而言,采用Chiplet技术或者其他的总线连接技术,能够极大地缓解数据传输中的带宽瓶颈。
当然,数据在超算中的不断搬运、存储带来的能耗或者对效能的影响是行业所关注的一个方面,AMD、英伟达和英特尔正在这方面持续努力。而另一方面的问题,可能更值得我们去思考,那就是为什么三大厂商都开始利用Chiplet技术(或者类似的设计)将CPU和GPU集成在一起?在CPU向多核形态发展之后,下一步是什么?
这样的趋势在桌面PC上可能刚刚开始出现,比如我们的CPU核心才刚开始有最多32个,即使线程撕裂者这样本来面向给服务器市场的处理器,其核心数量也多在64~96个。而在异构类型的超级计算机没有广泛普及之前,一整套超算往往会有数万到数十万个CPU。如此多的CPU在很大程度上极大地提升了超算的性能,但是随着CPU数量不断提升,新的问题出现了。
一方面是CPU数量上升到一定程度后,边际效应开始显现,继续增加CPU数量带来的性能提升不再是线性提升。这涉及很多问题,比如CPU中计算单元数量相对较少、超多的CPU核心在编程上存在困难等。
另一方面,更多的CPU带来了性能功耗比的下降,从而导致超算功耗变得越来越大,甚至难以控制。与之相应的是超算本身的功耗、散热所需功耗等叠加起来,使得相应产品的制造难度和使用成本变得难以控制。
超算中心需要哪些芯片?
先来看国内,2010年,中国的“天河一号”位居全球超级计算机500强排行榜榜首。其思路采用“CPU+GPU”的设计思路,结合了大约7000个英伟达GPU和14000个英特尔CPU,将GPU(图形芯片)用于超级计算机,起到了“CPU加速器”的作用。
尽管“天河”的主要部件仍来自英特尔与英伟达两个美国制造商,但互联芯片则完全是中国自主研发,“天河”安装有由中国自主研发的“飞腾1000”芯片,部分取代了进口芯片。
2016年“神威·太湖之光”诞生,是世界首台峰值运算性能超过每秒十亿亿次浮点运算能力的超级计算机。这台计算机共有40960颗国产芯片,运算系统全面采用了国产“申威26010”众核处理器。这也是我国第一台全部采用国产处理器构建的超级计算机。
从北京超级云计算中心来看,根据处理器的类别,北京超级云计算中心的超算分区可以划分为四大系列:基于AMD芯片的A分区与M分区,以及A分区的加强版「A6分区」;基于英特尔芯片的T分区与L分区;基于国产芯片的先导一号;基于英伟达芯片的AI智算云,比如N17、N19区。
其中,A分区采用的是AMD在2019年推出的第二代EPYC(霄龙)服务级处理器,代号罗马(Rome),基于7nm工艺,搭载64核心128线程,每一个核心的内存为4GB,在提升核心的同时也提升了时钟速度,加速频率可达3.4GHz。
国外方面,今年在超算榜单排名第一的美国的“前沿(Frontier)”超级计算机,相较于神威·太湖之光,美国的Frontier只有9408个节点,每个节点配备一个AMD Epyc 7A53 CPU和四个AMD Instinct MI250X加速卡。显然,Frontier的节点间通信的压力要小得多,也更容易设计。
该系统共包括8730112个内核,整个系统总共有9400多个CPU和37000多个GPU。Frontier核心计算部分主要依靠AMD Instinct MI250X加速卡,采用的是CDNA2架构。
此外,每块加速卡上还集成了128GB HBM2e高带宽内存。现在的超算主要还是冯·诺依曼结构占主导,内存速度将直接影响计算速度,这种内存比普通的要快得多,目前却只有少数企业能够生产。
超算中心如何分配芯片
超级计算机的性能野蛮生长了20年,至今为止,美国研制Frontier的花费也不过区区6亿美元,这说明超算系统规模的扩大并不是简单的堆硬件。
日本“富岳”(Fugaku)超算,宣称它的浮点运算速度峰值可达每秒41.5亿亿次;中国的“神威太湖之光”,它的浮点运算速度峰值是每秒12.5亿亿次。都达到了10亿亿次以上。超算用了很多个芯片,让它们同时执行任务,而单个芯片的性能跟个人电脑的芯片是差不多的。用科学术语来说,这叫做“并行计算”,这是高性能计算的基本思路。
超算的算力是和核数有关的。但算力速度并不能与核数构成正比例关系。实际上,要让多个芯片同时运行,就必须首先给它们划分好任务,这个任务划分是要消耗时间的。然后,当各个芯片开始计算之后,还不时地要和其他芯片交换数据,这个通信也是要消耗时间的。
超算的竞争主要是超算系统中调度、分发、通信相关的软硬件的竞争。早期的超算中心,每一个节点要么纯CPU,要么是CPU+加速卡的异构计算方案。但从2010年前后开始,纯CPU的方案劣势太大,越来越少地被采用。CPU+加速卡的异构计算方案也存在很大缺点,即计算的数据会反复在CPU和加速卡之间传输,造成大量的性能浪费。
因此,为了更高的性价比和计算速度,早期国内往往会购买英特尔和英伟达两家美国厂商的成熟产品。
再之后异构计算进入超算中心的眼帘。事实上,最近几年曾经在TOP500刷榜,或者排名靠前的超算都采用了异构计算——中国神威太湖之光、美国超算泰坦、中国天河1号和天河2号。
泰坦有18688个运算节点,每个运算节点由1个16核心AMD Opteron 6274处理器和1个英伟达 Tesla K20加速器组成,共计299008个运算核心,属于CPU+GPU。
天河1号使用了14336片英特尔 Xeon X5670处理器和7168片英伟达 Tesla M2050高性能计算卡,属于CPU+GPU。
天河2号有16000个计算节点,每个节点由2片英特尔的E5 2692和3片Xeon PHI组成,共使用了32000片英特尔的E5 2692和48000片Xeon PHI,属于CPU+众核芯片。正在升级的天河2号则将美国的Xeon PHI换成了自主研发的矩阵2000,属于CPU+DSP。
神威·太湖之光使用的sw26010将两个部分的电路,集成到了一个芯片上(片上异构),这样既避免了纯CPU不擅长专业计算的劣势,又避免了加速卡不能和CPU共享内存的问题。使得sw26010在设计团队规模很小,制程落后整整两代的情况,实现了和英特尔类似产品相似的功耗和性能。
太湖之光的成功,启迪了后来日本的“富岳”超算。“富岳”同样抛弃了美国成熟的计算方案,购买ARMv8.2-A指令集开发管理核心,并自研专业计算模块,推出了富士通版的片上异构芯片A64FX。
总结
我国在发展超算中心的途中,仍有许多问题。国产芯片研究起步较晚,CPU、GPU等超算核心芯片指令集架构领域仍然存在明显短板,缺乏高端芯片制造能力。EDA和编程平台长期面临卡脖子风险,核心设备依赖进口,自主权和议价权仍由国外巨头掌控。