既然核心是好东西,那更多核心不就更好了?那可不一定,特别是在HPC场景之下。不要总盯着五百强超算那大堆大堆的64核Epyc处理器,科学的结论需要科学的分析过程。
在与Atos和联想HPC部门的高管交流之下,我们明显可以得出结论:虽然核心多了不是坏事,但真正卡客户脖子的其实是内存带宽、I/O传输和时钟速率。
然而,AMD和英特尔并没有因此而气馁,他们在每一代处理器中不断提高核心数量。AMD的“Genoa”Epyc 9004拥有多达96个核心,而即将推出的“Bergamo”芯片进一步增加至128个。与此同时,英特尔的“Sapphire Rapids”至强SP最多提供60个核心。
原因并不难理解。英特尔和AMD(外加同样占有一席之地的Ampere Computing)做的就是为超大规模厂商和云服务商提供多核芯片的买卖。对他们来说,核心数量越多、每个节点所能承载的客户就越多。在这片市场上,核心数量就是决定成败的关键。
但主流HPC工作负载的情况则完全不同。另外,过度追求更高核心数量反而会给HPC客户带来困扰,其中影响最大的就是有限的带宽。
联想HPC与AI副总裁Scott Tease在采访中表示,“很多HPC用户对于核心数量并不敏感——他们不太关心核心,而是需要更高的内存带宽。”
其实这里的道理并不难理解。更多的核心也将快速摊薄可用的内存带宽。虽然AMD和英特尔都受益于这一代速度更快的DDR5内存,其带宽较DDR4提高了约50%;但只要芯片制造商以同样的比例增加核心数量,那带宽其实就并没有增加。为了解决问题,英特尔和AMD明显采取了截然不同的方法。
让我们先从英特尔说起,他们采用的是条非常有趣的路线,将64 GB/秒的HBM2e堆叠内存跟Sapphire Rapids至强Max CPU芯片近挨在一起。这相当于提供超过1 TB/秒的内存带宽,相当于采用普通DDR5内存通道的至强SP的三倍以上。如此一来,即使是56核Max系列CPU,每核心所分配到的带宽也有18 GB/秒。相比之下,AMD的旗舰级处理器虽然多了40个核心,但每核心分配到的带宽只有4.8 GB/秒。
Atos HPC首席技术官Jean-Pierre Panziera在谈起至强Max时表示,“这代表着带宽的大幅增加。对于带宽敏感型应用程序,例如用于天气预报的大规模流体动力学计算类工作负载,这有望带来可观的性能改进。”
当然,这里还有另一个问题:64 GB的内存并不算大,每个核心只能分到1.14 GB到2 GB左右的容量,具体取决于采用哪款至强SP。我们当然可以用DDR5扩展内存容量,但带宽会立即下降至约三分之一,而且需要靠芯片上的固件或ISV集成来处理数据移动。
但这对某些工作负载来说已经足够了。Tease表示,“在我看来,人们选择采用GPU的原因是多种多样的。对于其中一部分用例,只要加上HBM,大家其实很愿意把工作负载转移回CPU。”
另一方面,AMD则坚持用实践出真知的方法做探索,以牺牲电路板空间加稍微拉高延迟为代价添加更多内存通道。Genoa芯片的整个产品堆栈中包含12条内存通道,结合DDR5内存的更高传输速率,可实现460 GB/秒的总带宽——相当于“Milan”Epyc 7003的两倍以上。
虽然纯粹就带宽参数而言,AMD的方案远无法与英特尔的Max系列相提并论,但其足以带来很大改进、特别是在核心数较少的产品当中。另外,因为AMD使用的是常规DDR5内存,所以不用像英特尔至强Max那样依靠软件进行内存分层。
根据Tease的介绍,在核心和内存带宽的平衡性方面,英特尔具有“明显优势”。他表示,“希望HBM能在行业当中得到更广泛的推广。”不止是Tease,不少行业知名人士也都把HBM看作HPC和AI类工作负载的提速关键。
如果不跟AMD的X系列旗舰芯片比较,我们很难讨论英特尔的Max系列CPU。前者的方案是在CPU晶片上添加HBM层SRAM,借此放大L3缓存。
在去年11月底的AMD加速数据中心线上会议期间,随着Milan-X的公布,这项新技术也首度亮相。AMD使用一种名为3D-V-Cache的高级封装技术在核心复合晶片(CCD)上叠加了额外的SRAM,这样就能为每晶片增加额外的64 MB L3缓存,总容量达96 MB。在其旗舰级芯片上,L3缓存更是高达768 MB。
通过将更多工作负载交给L3缓存,AMD宣称这能显著提高带宽密集型工作负载的吞吐量——在Synopsys VCS测试中,吞吐量提高了66.4%。
然而,目前Tease和Panziera都还没有选择3D-V-Cache产品,阻碍他们的似乎主要是性价比。
Panziera表示,“到目前为止,从所有应用程序和基准测试结果来看——这里我们只讨论HPC,性能的提升与价格的上涨幅度并不匹配。更大的缓存确实带来了提升,但对HPC来说意味没那么大。”
在Tease看来,HBM才是更有希望的灵活介质。“确实有一部分工作负载,比如用于CFD类工作负载的EDA,能够在大缓存中带来出色的性能表现。可一旦其体积超出缓存极限,就仍然得借助主内存,导致速度减缓。HBM则有更大的几率承载全部代码,充分发挥访问率带来的性能优势。”
AMD尚未公布关于Genoa-X的详细信息,但可以推测其将搭载比即将推出的Milan-X更大的缓存。
Panziera表示,过去10到15年间,CPU的基本时钟速率始终停留在2 GHz到3 Ghz之间。
原因倒是可以理解:芯片中包含的核心越多,驱动时钟速率的功耗就越低。结果就是,长久以来时钟速率一直原地踏步。
英特尔的第四代至强SP在延迟数月后,已经在今年1月公布。不出所料,只有少部分芯片提供3 GHz的基频标定,而且即使是在Turbo模式下极限频率也不到4.1 GHz。
可以肯定的是,这代表着一种潜在的改进方向,但提升时钟频率本身对性能的贡献其实难以预测。因为其是由复杂的算法所决定,这些算法会权衡温度、功率配额、内核负载甚至是指令集,从而综合确定各个核心应提升多高。因此,我们只能按基本时钟频率来计算,这才是稳定可靠的可用计算资源——除非芯片因过热而损坏。
AMD在此之前的发展思路也是如此。但随着Zen 4架构的推出,AMD全面拥抱台积电效率更高的5纳米制造工艺,其拥有更高的整体热设计功耗(TDP),因此Genoa的表现全面升了一个档次。AMD目前已经有多款高性能(F)SKU的主频超过4 GHz,而由此带来的直接结果就是更高发热量。
所以已知的条件是,Zen 4架构能推动更高的时钟频率,而且消费级Ryzen处理器用的也是这套架构。AMD公司的16核7950X具有4.5 GHz基础时钟,如果将功率加大到230瓦则可推高至5.7 GHz。虽然不是每个核心都有这么大的弹性空间,但趋势仍令人欣喜。
Tease认为,“我们有点迷失在多核心当中了。”他更希望芯片制造商能在HPC类产品中提供更高的核心主频。“其实真正需要96核或128核心的客户非常非常少。如果保持8核到16核但把主频推到4 GHz以上,效果会更好。”
时至今日,GPU已经替代CPU成为性能提升的主要驱动力,近年来这股工作负载加速趋势已愈发显著。
Tease表示,“CPU在服务器领域的主要性能贡献者身份已经有所变化。在大多数情况下,如今的CPU扮演的更像是流量督导者的角色。”
因此,芯片制造商不妨将二者结合起来,即全面实现CPU与GPU的大融合。这当然不是什么新观点,毕竟以轻薄为卖点的超级本向来配备的就是这类硬件。
AMD最近展示了即将推出的Instinct MI300加速处理单元(APU),该单元非常聪明地采用了小芯片加3D封装技术。MI300A包含9个5纳米加4个6纳米小芯片,如果按AMD的以往设计习惯,我们猜测其应该会包含两组HBM。
去年2月发布预览的英特尔“Falcon Shores”CPU-GPU混合处理器也遵循类似的设计思路。即将推出的“Ponte Vecchio”GPU和“Rialto Bridge”GPU核心,都是把X86 CPU核心和Xe图形核心加以结合。目前Falcon Shores的已知细节仍然不多,但我们知道跟AMD MI300系列一样,Falcon Shores也将包含CPU、GPU以及共享的“极限带宽” 内存池——也许是HBM3堆叠内存或者别的什么。英特尔坚持将这类设备称为XPU,并将采用最先进的Angstrom-era制造技术。
虽然不完全相同,但英伟达的Grace-Hopper超级芯片的设计思路其实也跟AMD MI300和英特尔Falcon Shores区别不大。更重要的是,该设计是把一块带有512 GB LPDDR5X内存的Grace CPU晶片跟一块带有80 GB HBM的Hopper GPU晶片封装在一起,并通过高速NVLink端口互连。其产品定位就是要在市场上全面击溃AMD和英特尔。
但这样的转变也给原始设备制造商带来了不小的挑战。头号难题就是发热量管理。如今,主流CPU的功耗已经超过400瓦,GPU的功耗更是直逼600瓦。Tease表示,“我预计某些APU的功率将会超过1000瓦。”
到了这个阶段,液冷系统就不再是锦上添花的选项、而是必不可少的基本配置。
另一个挑战在于软件支持。虽然英特尔和英伟达有着悠久的芯片支持软件开发历史,但AMD相比之下却有点经验不足。Tease评论道,“我们很喜欢MI300和MI400的设计思路和路线图,但对其软件生态系统仍抱有怀疑。对于想要批量使用的客户来说,AMD家的产品还做不到纯交钥匙的程度。”
Panziera对于Arm处理器开发软件的成熟度也表达了类似的担忧,这影响的明显是英伟达的Grace。“你可能会遇到这样的情况:有70%的应用程序可以在这个平台上启动并运行,但另有30%怎么也跑不起来,所以只能重新回到X86之类的成熟架构。”
毫无疑问,将CPU和GPU混合起来的方案能够解决某些现有HPC瓶颈,但仍不足以扫荡一切。而且我们还不确定这种新设计对于AI训练和数据分析类工作负载有何帮助。前景仍不明朗,我们将持续关注。
好文章,需要你的鼓励
AMD CIO的职能角色早已超越典型的CIO职务,他积极支持内部产品开发,一切交付其他部门的方案都要先经过他的体验和评判。
医学生在选择专业时,应当考虑到AI将如何改变医生的岗位形态(以及获得的薪酬待遇)。再结合专业培训所对应的大量时间投入和跨专业的高门槛,这一点就更显得至关重要。
我们拥有大量数据,有很多事情要做,然后出现了一种有趣的技术——生成式AI,给他们所有人带来的影响。这种影响是巨大的,我们在这个领域正在做着惊人的工作。