将时间倒回2012年,当时的AMD正考虑退出数据中心CPU业务,而其数据中心GPU也一直没能真正得到关注。就在这生死存亡之际,美国能源部出于自身政治与经济利益决定实施一项开明策略,冒险投资AMD以开展内存技术及百亿亿次级混合CPU-GPU计算的研究。虽然这笔钱并不算多,但足够让AMD的工程师们有机会考虑整个美国的未来,并为如今强大的CPU与GPU业务埋下种子。
十多年后,劳伦斯利弗莫尔国家实验室的“El Capitan”超级计算机即将登顶全球最强超算榜单,其采用“Antares”Instinct MI300A计算引擎,而其中复杂的架构与封装工艺正是当初能源部投资的结果。
AMD最近专门通过一篇论文,回顾了Antares系统如何从无到有构建而成。总结来讲,整个过程就是“一步一个脚印”。AMD公司技术人员之一Gabriel Loh将这篇论文发布在了个人资料当中,而其最早其实是发表在今年7月初在阿根廷布宜诺斯艾利斯召开的国际计算机体系结构研讨会(ISCA)。虽然稍稍晚了一点,但相信这篇题为《实现AMD百亿亿次异构处理器愿景(Realizing the AMD Exascale Heterogeneous Processor Vision)》的文章一定能够激起大家的兴趣。
AMD去年曾在ISCA 2023大会上发表过一篇类似的文章,名为《AMD百亿亿次计算之旅研究回顾(A Research Retrospective on AMD’s Exascale Computing Journey)》,数十名研究人员探讨了FastForward与DesignForward等工作如何演变为如今名震天下的“Frontier”超级计算机——这套系统不仅早于MI300A和El Capitan,还启发了后者的诞生。
下面的故事,正是由这两篇文章概括而来。
当初拿到美国能源部在DesignForward和FastForward两个项目的援助资金时,现在的人们恐怕很难想象AMD在数据中心市场已经衰退到了何种境地——恐怕AMD也不希望大家再继续深挖那段“黑历史”。但顽强的AMD如今已经重新站了起来,在一定程度上对抗着英伟达在CPU领域的绝对霸权,并且继承了英特尔传下的CPU计算衣钵。只要这种竞争关系还在,每位市场参与者就都能专注于这场技术竞逐,最终推动整个行业的创新和进步。
FastForward一期计划获得了6240万美元资金,后续的二期计划则拿到近1亿美元。DesignForward的一期计划对应2540万美元,但我们找不到关于二期计划的任何文件。总而言之,AMD从美国能源的这四笔投资中获得了巨大帮助,开始在FastFoward一期计划中研究异构计算、内存处理及缓存内存,并在二期计划中研究低电压逻辑与新的内存接口。DesignForward项目同样分为两期,参与者主要面向百亿亿次系统的互连和协议难题,还包括系统设计集成。
2015年,名为PathForward的类似项目带来了更多资金,且真正是从开发、而非研究的角度推进百亿亿次级系统。这波2.58亿美元的投资由英特尔、英伟达、Cray、IBM、AMD和HPE共同分配,再加上各供应商的配套投入,总投资额达到4.5亿美元。
前后相加,全美科技界总计花费了至少6.378亿美元、历时八年才设计出百亿亿次级硬件。而且在美国资助的百亿亿次级设备当中,AMD、Cray与HPE的组合拿下了大部分订单。欧洲方面安装的部分大规模系统也采用了相同的架构,不过合资企业EuroHPC主要通过自主研发的CPU、加速器和互连方案来规避风险。
每个项目都是从初步愿景和漂亮的宣传图片开始的,而AMD十多年前所勾勒的未来图景也是一样。如今我们从由13位AMD技术人员撰写的论文中看到了这一切,其中多位成员凭借AMD的加速处理单元研发工作而成为高性能计算(HPC)和AI领域的知名人物。其中体现的,正是如今广为人知的异构系统架构。以下图片就来自2012年的FastForward一期计划:
下图则是AMD在同一时期,对百亿亿次异构处理器初代方案的早期深度分析:
这套EHP-1设计实际是一套四核方案,拥有256位向量并同GPU复合体匹配。该GPU复合体拥有两个流式多处理器,每处理器可实现6万亿次浮点运算加64位向量数学运算能力。根据推测,这款芯片设计也支持FP32格式,但可能无法支持较低精度的格式。请大家注意,该方案主要针对的是高性能计算类工作负载,而当时Transformer AI工作负载还没有迎来我们如今所熟知的全面爆发。AI工作负载在本质上仍然属于统计类任务,可以为了吞吐量而牺牲掉一部分精度,最终同样能够收敛出正确的答案。高性能计算工作负载则对确定性要求更高(具体体现为64位数据和高质量算法),即精度越高、得到的答案就越好。可能跟很多朋友想象中不同,如今这个时代最关键的议题其实是如何在新的高性能计算应用中引入较低的精度,同时保证其仍能得到正确结果。
时间来到2014年,AMD发现从14/16纳米到5纳米,芯片制造中的单位面积标准化成本已经上涨至2.5倍,整体解决思路也从之前的单片处理器加GPU复合体转向了chiplet小芯片设计。
在此期间,AMD还开始质疑处理器内存(PIM)方法在经济和技术层面的可行性,这种方法同样源自美国能源部的资金支持。除了质疑在计算引擎中应用NVRAM的意义之外,AMD还直言不讳地表示,业界对于堆叠大量DRAM芯片来制造HBM内存组的想法过于乐观。上图所示为16层堆叠芯片,事实证明AMD是对的,时至今日我们也仍只能实现8层芯片堆叠——直到明年,12层芯片堆叠才刚刚迈入商业实现阶段。
另外需要注意的是,EHP v2决定将DRAM内存堆叠在GPU芯片之上,这无疑是个雄心勃勃的目标。
2016年,AMD重新出发,对EHP设计开展了第三次迭代:
这时的GPU芯片被分成了两半,在GPU顶部是8层高的HBM栈,而CPU芯片则位于计算引擎的中心,大概是为了便于访问HBM内存。这套EHP v3设计在GPU下方使用了有源中介层,意味着其将搭载路由器或中继器等有源组件,而不再采用由金属线组成的无源中介。
AMD最终发现,有源中介层与在此基础之上打造的3D内存堆叠设计在经济上缺乏可行性。于是2018年的EHP v4设计由此出炉:
在EHP设计的前三次迭代中,AMD试图将所有东西都塞进其Epyc SP3服务器插槽之内。但通过PathForward的启发,AMD不再单独从插槽的角度思考问题,而开始着眼于系统主板层面,并想到应该使用Infinity Fabric链路在主板上将更大的“插槽”拼接起来。AMD拥有自己的GPU插槽封装设计,也一直在密切关注由微软和Meta Platforms创建、并于2019年被采纳为OCP标准的OCP加速器模块(OAM)插槽。(AMD显然提前知道其将被采纳为标准,而且Instinct GPU至今仍在采用这种插槽。)
AMD在为橡树岭国家实验室的Frontier超级计算机设计计算引擎复合体时,选择了CPU与GPU 1:4的比例。这一事实引发了广泛关注,但AMD发表的两篇论文表明,其本质上是一个八核芯片块与GPU芯片块的1:1配对,且每节点容纳八个这样的CPU-GPU对。详见下图:
从某种意义上讲,Frontier节点类似于一种虚拟APU,而且也是以这样的方式进行编程。GPU之间采用更宽的Infinity Fabric管线,因此能够快速共享数据,将GPU芯片对紧密耦合在一起。相邻的GPU复合体则通过相对没那么宽、速度略低的Infinity Fabric管线相互连接,而CPU与GPU之间的链接还要再窄一点。
到这里AMD可说是只差临门一脚了。但美国政府需要的是百亿亿次级超算系统,这最后一脚必须得踢。
于是借助去年12月发布的、在El Capitan中大量采用的Instinct MI300A,AMD终于完成了它一直想做的尝试:打造真正的APU。该公司创造出了可以说是历史上最复杂的计算引擎插槽,下面来看其馈送与速度指标:
下图为该复合体的横截面:
这简直就是一块由硅和金属材料组成的三明治……
我们对任何硬件进步都保持着赞赏的态度,但之所以特别关注AMD的这套方案,原因有以下几点。其中的CPU和GPU是真正统一的,因此代码与使用纯CPU的架构并没有太大区别。AMD在第二篇重点介绍MI300A的论文中给出了典型案例,展示了不同场景下数据的移动和同步方式。请看下图:
MI300A架构旨在将CPU-GPU组合紧密耦合起来,并使用组合中Epyc CPU CCD上的PCI-Express端口与外界实现连接,具体如下图所示:
现在最让我们好奇的,就是企业客户到底是更愿意采购MI300A服务器,还是使用能够与Antares系列中独立MI300X GPU配对的独立Epyc CPU。这个问题的答案,恐怕还是取决于价格、芯片产量以及企业客户这边实际需要的CPU-GPU计算比。我们也很想知道MI300A在价格、性价比和散热表现方面,跟英伟达的Grace-Hopper或者Grace-Balckwell两套独立CPU-GPU组合究竟孰优孰劣。
到目前为止,我们还没有确切的数据对双方做出一一比照,但后续将保持密切关注。更多更新内容,敬请大家期待。
好文章,需要你的鼓励
马来西亚,东南亚第二大汽车市场,长期以来被日韩汽车品牌占据主导地位。近年来,随着电动汽车的兴起,中国品牌比亚迪迅速崛起,占据了马来西亚电动汽车市场近 80% 的份额。面对这一局面,马来西亚政府将目光投向了本土汽车品牌 Proton 和 Perodua。
微软推出了一个名为AutoGen Studio的开源界面。该界面可以通过设置Python API,以及简单的拖拽页面操作,从而无需编写代码,即可
NVIDIA Grace Hopper 超级芯片架构将 NVIDIA Hopper GPU 的开创性性能与 NVIDIA Grace CPU 的多功能性结合在一起,在单个超级芯片