Siryn 微架构之声:安培 One 系列 192 核心 CPU。芯粒、高级封装和虚伪的性能宣传

Dylan Patel、Gerald Wong、George Cozma

2023年5月18日

目录

云原生——是市场营销的花边新闻吗?

安培 One 系列——Siryn

封装和热设计

性能——虚伪和不公平的比较

核心微架构

IPO,超大规模内部芯片,以及超威/英特尔的竞争


安培计算公司专门为云数据中心市场生产 CPU。该公司已经成功地吸引了大量的客户,包括阿里巴巴、谷歌、微软、腾讯和甲骨文在内的几家主要云计算供应商都为其云计算业务购买了不同数量的安培芯片。此外,在 Cruise 自动驾驶汽车中也可以看到安培的芯片。仅在 2022 年,SemiAnalysis 估计安培的 CPU 出货量就超过了30万个。

今天,安培计算公司宣布了其第三代数据中心 CPU,代号为 Siryn 的 Ampere One。这标志着该公司的一个重大变化,因为这是他们第一次采用定制的内部架构。Ampere Computing 以前使用 Arm 的 Neoverse 内核,但他们现在已经成功摆脱了 Arm 昂贵和限制性的内核许可条款的束缚,获得了 Arm 架构许可,提供了更大的自由。

今天我们将深入探讨安培计算公司新 CPU 的性能、竞争定位、战略和财务细节,以及他们即将进行的 IPO。该公司告诉人们的事情我们不都认可,比较坦率地说我们认为他们的一些表述是虚伪的。在我们深入批判性地分析他们所宣布的内容之前,让我们对该公司做一个快速概述。

云原生——是市场营销的花边新闻吗?

安培计算公司的主要战略是,他们设计并提供专门为云数据中心而设计的 CPU。这一总体战略可归结为两个词:"云原生"。超威和英特尔必须将他们的 CPU 定位于广泛的工作负载,包括各种类型的企业和云——这些工作负载从存储服务器到网络服务器再到基于加速器的 AI 系统。来自超威和英特尔 CPU 核心的这些应用的 CPU 核心设计也倾向于进入笔记本电脑等客户端计算应用,只需做一些修改。安培公司的主张是,他们可以把激光聚焦于数据中心中增长最快的部分——云,并为其优化产品。

他们认为,未来的计算将在很大程度上依赖于微服务、容器化和无服务器执行模式。这些概念通常是指通过大量的小工作和进程来扩展性能,而不是过度关注单线程的 CPU 性能。明年,超威和英特尔都将发布具有类似策略的 CPU。安培认为他们的 CPU 有三个主要的 "云原生 "方式。

    每个 CPU 的性能更高

    可预测的性能

    可扩展性

让我们来分析一下他们的架构是如何实现的。安培认为,他们可以通过拥有更高的核心数来获得更高的性能。这些更高的核心数量只能通过有意识的工程权衡来实现,以利用比英特尔和超威更小的核心。说白了,安培的内核在每线程性能方面明显落后于超威和英特尔,尤其是浮点性能。他们的赌注是,这些较小的内核提供了更高的单位晶体管和瓦特的性能,如果从整个芯片的整体来看,这使得他们能够提供更高的整体性能。我们将在报告的性能部分讨论这一结果。

安培公司还认为,他们通过每个内核只运行一个线程,提供了更可预测的性能。英特尔和超威每核提供 2 个线程,即同步多线程(SMT)。SMT 利用了主要由等待内存造成的工作负载的空隙,使硬件的执行资源得到了更高的利用率。SMT 在提高性能的同时,几乎没有增加每个内核的总硅面积和晶体管数量。

SMT 的缺点是,它可能导致不可预测的性能,因为线程共享核心的资源。另一个潜在的坏处是安全问题。利用 SMT 中的漏洞是一种常见的侧面通道攻击方法,自 Spectre 和 Meltdown 出现以来,这种攻击已经爆炸性地流行起来。

安培更可预测的性能的主张也延伸到了安培的缓存架构。每个核心都有一个大的私有二级缓存,而共享的三级缓存相对较小。超威和英特尔通常依靠较大的共享 L3 高速缓存,这在许多工作负载中有助于提高性能,但也可能妨碍性能的可预测性。

安培也非常重视时钟速度的一致性。英特尔和超威的 CPU 根据正在使用的内核或线程的数量以及正在执行的代码类型,大幅改变其核心时钟速度。这有助于他们的 CPU 在给定的功率和热预算内最大限度地提高性能,这在许多工作负载中是一个巨大的优势。

安培计算公司放弃了这一做法,而是通过在任何工作负载下保持相同的时钟速度来提高性能的可预测性。这一决定的理由是,云工作负载是多租户的。如果用户以提升时钟速度的形式获得更多的性能,他们可能会逐渐习惯于此。当这些提升的时钟速度由于嘈杂的邻居虚拟机上下旋转而被剥夺时,他们的性能将受到影响。安培通过锁定时钟速度有效地保证了性能。在新一代产品中,时钟速度为 2.8GHz,比上一代产品略有下降。

英特尔和超威即将推出的 Sierra Forest 和 Bergamo 产品架构,正在采用 "云原生 "CPU战略的许多元素。两者都针对云工作负载,并将在明年发布。所有这些 CPU 的总体目标是提高能源效率,增加性能,并减少数据中心的总占地面积,这是在数据中心的功耗持续飙升的情况下所需要的。

安培 One 系列——Siryn

进入今天的公告,安培正在继续这一旅程,新的 192 核 CPU 的内部 CPU 核心,比上一代的 80/128 核更多。安培转而采用 DDR5 内存和 PCIe Gen 5,这极大地提高了 IO 吞吐量。此外,安培还增加了一大批功能,以提高一致性和先进的队列和生命周期管理功能,协助云供应商进行部署。

  • 网格拥堵 - 试图通过网格上其他不那么拥堵的路径重新安排核心之间以及从核心到内存或IO的通信。

  • 嵌套虚拟化支持--允许云供应商的租户在其已经虚拟化的环境中运行虚拟机,而几乎不影响性能。

  • 下降检测和进程老化监测器--协助管理芯片在使用过程中的逐渐崩溃,防止不稳定。

  • 安全性--安全虚拟化、单键内存加密和内存标记等功能使云的租户能够确保他们的数据安全,尽管共享内存控制器和DRAM棒。这些功能有助于防止缓冲区溢出攻击,提高数据库的数据完整性。

安培的新设计中最有趣的方面是其架构。安培公司已经转向芯片式架构,利用 5 纳米台积电制造 CPU 内核,利用 IO 芯片制造内存控制器和 PCIe 控制器。其物理配置与亚马逊的 Graviton 3 相似。它还使用 AMBA CHI 连接到小芯片。

安培 Altra Q80 芯片,单片式台积电 7 纳米。由 Roman Hartung 脱模(开盖),亚马逊的 Graviton 3,显示了一个被内存和 PCIe IO 芯片包围的主核心芯片。

安培公司采用小芯片式的方法,使他们能够制造新的 CPU 核心芯片,并在明年推出拥有超过 192 个核心的更新产品。

我们利用 Ampere One 公司在 ISSCC 2022 上展示的 Altra 的平面图,对新的 Ampere One A192 "Siryn "芯片设计进行了模拟。我们的模拟采用了与 Graviton 3 相同的芯片布局,因为两者都使用类似的网状和芯片互连接口。这样的设置在不同规模的虚拟机上提供了简单的可配置性和可预测的性能。与 4 核虚拟机相比,32 核虚拟机的 CPU 吞吐量基本上会呈线性扩展。这与超威采用的芯片组设计相反,多个核心芯片组围绕着一个中央 IO 芯片。与可以留在同一芯片组的虚拟机相比,需要占用多个核心芯片组的大型虚拟机会出现性能不一致的问题。

值得注意的是,安培公司表示他们已经对这种芯片进行了一年的采样,但现在才进入大规模生产。这表明,他们需要对芯片进行几次重塑,以使其正确。虽然这是一种痛苦,但这并不像英特尔花了 12 次重做和超过 2.5 年的时间才把蓝宝石激流(Sapphire Rapids)搞好那样糟糕。

封装和热设计

安培目前的 Altra 产品线具有大型的单片芯片和相对温和的功率水平,不需要复杂的封装和热设计。芯片位于普通的有机衬底(LGA 4926)之上,在芯片和大型集成散热器(IHS)之间有一个聚合物热界面材料(pTIM)来散热。

这种情况在 Ampere One 中有所改变。IHS 不见了,安培采用了直接接触芯片的设计,有一个大而厚的加强环,就像我们在 GPU 和移动 CPU 上看到的那样。然而,这些都是焊接的 BGA 设计,而 Ampere One 是插入 LGA 5964 插座的。通过将散热器的冷板尽可能地靠近发热硅,直接裸片的方法消除了热阻层,有助于控制温度。

随着使用功率飙升至 350W,甚至在峰值功率情况下更高,封装的热设计得到了更多的关注。亚马逊在从 Graviton 2 转向 Graviton 3 的过程中,也从 IHS 转向了直接裸片。与此同时,数据中心CPU的现任者(英特尔、AMD)暂时坚持使用传统的 IHS 与焊接 TIM。

尽管安培公司说 Siryn 是一个芯片设计,但从视觉上看,该封装只显示了一个大的芯片。我们通过提出以下观点来调和这一观察:可见的只是一个位于所有小芯片之上的载体晶圆。在先进的封装过程中,所有的小芯片都被粘合在载体晶圆上,然后被切成小块,用细间距的小芯片互连(InFO, CoWoS-R, FoCoS)连接到基板上。

芯片上方的这种结构硅不仅提供了第三方冷却器安装的直接裸设计所需的额外结构刚性和耐用性,而且还作为硅基热扩散器,帮助平衡热能热点,并将热量从热核心芯片扩散到冷却器的 IO 芯片上。由于该材料与下面的计算和 IO 模具相同,这最大限度地减少了反复加热和冷却周期中的热膨胀系数(CTE)不匹配,提高了结构的可靠性。

虽然这个顶部的硅片使我们无法查看实际芯片的裸片尺寸,但它确实显示了这个封装有多大。顶层芯片应该接近视网膜的极限,这意味着该封装大约是 90 毫米 x70 毫米。这比目前任何可用的数据中心 CPU 都大。在 2022 年 OCP 峰会上披露的 Mt.Mitchell 平台的 LGA 5964 板原理图也显示了该插座有多大。

此外,Mt.Mitchell 还提供了正在开发的 Ampere One 的 12 通道 DDR5 变体,为每个插座提供 50% 的内存带宽。

这个 12 通道变体将在内存带宽方面与超威的 Genoa 和 Bergamo 相媲美。它也在不断增长,超过了 192 核。

性能——虚伪和不公平的比较

安培公司从来不喜欢谈论每核或每插座的性能,而更喜欢坚持他们的每个机架性能指标。大多数老式数据中心的设计是为每个服务器机架提供约 14 至 20 千瓦的电源和冷却。机架可容纳的单元数量各不相同,但一般在 42 个单元左右(42U),单个服务器占用 1U 到 8U,这取决于系统架构。

随着 CPU TDP 的飙升,这些典型的数据中心机架现在更多的是受到电源的限制,而不是空间的限制。将高密度刀片服务器与高功率的 Xeon 堆叠在一起的机架会将这一电力预算耗尽许多倍,需要具有更高冷却能力的专业数据中心基础设施。我们在英伟达的 AI 服务器上也看到了这一点。由于功耗巨大,他们的 DGX Super POD 设计无法完全填满每个服务器机架。英伟达的 AI 服务器通常有 5U 到 6U 之多,其中 A100 DGX 服务器是 ~6.5千瓦,H100 是 10.2 千瓦。

Ampere 声称,在行业标准 SPEC CPU2017 整数率工作负载中,Ampere One A192 的单插槽服务器功耗为 434W,AMD EPYC 9654 Genoa 功耗为 624W,英特尔至强 8480+ 蓝宝石急流(Sapphire Rapids)功耗为 534W。每个机架的功率预算为 16.5千瓦,这意味着一个机架可以为 38 台 Ampere One 服务器、30 台英特尔服务器或 26 台超威服务器供电。将每台服务器的 CPU 内核与每台机架的服务器相乘,并假设是单核虚拟机,我们可以得出,他们声称的 Ampere One 为虚拟机供电的能力与目前 x86 世界最好的相比,是其 2.92 倍。

虽然这个指标对于那些寻求在每个服务器机架上塞进尽可能多的虚拟机客户端的人来说是有用的,但它忽略了性能方面,如果客户只是需要一个 "足够好 "的每核性能水平,这也是可以的。我们提取了 SPEC CPU 2017 的提交结果,以显示每核整数性能与目前市场上的 Altras 和 CPU 的截然不同。

虽然 Ampere One 无疑应该提供更好的每核整数性能与 Altra 相比,我们没有看到它接近超威或英特尔的地方。此外,竞争者的 CPU 在开箱时就被推到了每个插座的最高性能,而且功耗很高。人们总是可以在性能/功率曲线上找到一个更有效的点,即花更多的钱,降低功率,以便在每个机架上安装更多的 CPU。

Ampere 没有披露 SPEC 整数率性能,但如果我们以每机架的性能来衡量,那么 Ampere One 将更接近竞争对手,尤其是即将推出的 128 核 ergamo 处理器。另外,请注意安培处理器的整数加权结果。目标云原生工作负载主要以整数性能为重点,这与英伟达的 Grace 超级芯片应该擅长的 HPC 工作负载截然相反。

正是在这里,比较变得真正不公平。在稳定扩散(Stable Diffusion)测试中,Ampere One 配置了 160 个核心,512GB 的 DDR5 和 Linux 内核 6.1.10,而超威的 Genoa 被束缚在 256GB 的一半内存中,并且只填充了 12 通道内存能力中的 8 个,使用的是旧的 5.18.11 内核。此外,他们只为 Genoa 衍生了 96 个线程,而为 Ampere One 衍生了 160 个线程。Genoa 通常需要所有 12 个通道的内存和 192 个线程(利用 SMT)来实现最大性能。

虚伪的设置并不止于此。在 DLRM 测试中,还有一个区别,Ampere One 使用 FP16 数据格式,而他们的 AMD 系统则被配置为使用 FP32 数据格式。更高精度的数据给这些受内存约束的人工智能工作负载带来了更大的内存压力,进一步损害了性能。

这实在是不可原谅的,因为这两个处理器都支持降低精度的 BF16 格式,这本来是可以使用的。虽然我们期望 Ampere One 的 AI 性能很好,但没有必要在设置上做手脚,使差别更大。为你的安培感到羞耻。

奇怪的是,Ampere One 在人工智能工作负载中显示出比 SPEC 整数率多得多的功率。当 SPEC 中的 192 个内核拉动 434W 的系统功率时,稳定扩散(Stable Diffusion)中的 160 个内核拉动 534W。Genoa 的情况正好相反,在 SPEC 中拉动了 624W,但在稳定扩散(Stable Diffusion)中只有 484W。这表明这些处理器之间存在性能优化方面的缺陷。这也表明,由于安培的伎俩,热那亚可能没有得到充分利用。

核心微架构

安培公司的内部核心微架构是一个有趣的混合体,与他们以前从 ARM 有限公司授权的 Neoverse N1 核心相比,变化很大。首先,他们增加了第 5 个整数 ALU,将流水线的数量从 8 条增加到 12条,增加了 2 个加载/存储 AGU,以及一个专门的浮点存储单元,该单元还可以进行浮点到整数的转换。为了处理新增的流水线和执行单元,安培公司重新配置了 N1 的调度器布局。

从 N1 的 8 个独立的调度器来看,Ampere One 有 8 个调度器,其中 4 个用于整数端,2 个用于浮点和矢量单元,2 个用于内存端。看一下 LLVM 的补丁,我们认为调度器的布局是这样的。

转到内核的其余部分,Ampere One 有一个据说有 174 个条目的重排序缓冲器(ROB),虽然对现代高性能内核来说非常小,但与 N1 的 128 个条目 ROB 相比是一个很好的提升。与 N1 相比,这使 Ampere One 能够获得更好的指令级并行性,并使该核心在任何时候都能处理更多的操作。

对于加载和存储系统,Neoverse N1 被限制在 2 个 128b 加载或 1 个 128b 加载和 1 个 128b 存储。 在 Ampere One 上,这被增加到每个周期 2 个负载和 2 个存储。现在我们不知道 2 次加载和 2 次存储是否也适用于 128b 的操作,但是我们发现 AmpereOne 很有可能在每个周期内进行 2 次 128b 的加载和 2 次 128b 的存储,使加载和存储带宽增加一倍。

Ampere One 的高速缓存子系统有一些明显的变化。L1 数据缓存与 Neoverse N1 的 64KB 4 路设置相同,Ampere 将 L2 缓存从 1MB 8 路配置增加到 2MB 8 路配置,这有助于将数据保持在核心本地,这对云工作负载很重要。

安培也改变了 L3 布局。安培表示,他们的 64MB "L3 缓存 "更像苹果的 SLC,它是一个内存侧缓存,而不是像超威和英特尔使用的更传统的 L3 缓存。他们还说,他们使用的是 ARM 的 CMN 网状结构,但他们没有对网状结构进行评论。他们是如何用 192 个核心获得 64MB 的 LLC 的,我们不清楚,安培公司目前也没有给出答案。安排 L3 的一种方式是沿用他们对 Altra 的做法,即 L3 分散在网状网络中,但不是所有拥有 4 核集群的网状站都包含 L3。另一种方式是将所有 L3 放在 DDR5 内存控制器旁边的大组中,类似于超威的 Infinity Cache 等其他内存侧缓存。

这里真正有趣的变化是将 64KB 的 4 路 L1 指令高速缓存减少到 16KB 的 4 路 L1 指令高速缓存。这是一个有趣的举措,我不知道对性能是否有利。传统上,更大的 L1 指令缓存(L1i)被认为是更好的,因为待在最接近核心的缓存中比去更高级别的缓存(如二级缓存)更省电,而且带宽更高。

关于 L1 比 L2 的带宽高这一点,Ampere One 可能不是这种情况。现在我们不知道 L1i 缓存的带宽,也不知道 L2 和 L1i 之间的带宽,但是从 L1i 到内核其他部分的带宽可能是每周期 16 字节。大多数 ARM 指令的长度为 4 字节,Ampere One 有 4 个宽解码。因此,为了使内核充分得到新指令,Ampere One 可能有每周期 16 字节的获取带宽。二级缓存也可能有一个每周期 16 字节的链接到 L1i,因为每周期 16 字节的链接到 L1i 在现代 CPU 内核中是很常见的。
 

但对于前一点,我们不知道安培为什么选择削减 L1i,但至少有 2 个原因我们可以想到。削减 L1i 是为了节省面积,因为 L1i 使用的是非常不密集的 SRAM,可访问性很高,所以将其削减到 16KB 可以节省大量的面积。另一个原因是,当你从 16KB 到 32KB 再到 64KB 时,他们分析的工作负载的性能明显降低,比如 SPEC INT 2017,它在指令方面并不是超级重的。

现在,我们怀疑很可能是这些因素与其他压力的结合,使安培走向了这个方向。然而,这是一个云处理器,所以虽然他们可能有他们关注的工作负载,但这也必须是一个足以满足通用工作负载的 CPU 核心。

IPO,超大规模内部芯片,以及超威/英特尔的竞争

接下来我们要讨论 IPO、竞争加剧的长期前景、超威/英特尔的回应、RISC-V 生态系统以及亚马逊、谷歌、微软和阿里巴巴等超大规模企业的内部路线图。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值