Fork me on GitHub

亚马逊推出第二代Arm服务器芯片Graviton2,能否快速替代x86?

  作者:包永刚

  数据正在成为越来越重要的资源,但挖掘数据的价值面临挑战。这其中,处理器的效率以及成本都非常关键,因此看到在大数据和 AI 时代,越来越多拥有大量数据或提供云服务的公司都相继推出自研的处理器。亚马逊就是其中的代表,他们在近日的 re:Invent 上推出了 Arm 架构的服务器处理器 Graviton2。这是否意味着 x86 架构处理器将会被替代?

  关于 re:Invent 的更多报道,请查看雷锋网发自现场的《芯片问世、Outposts 上市、SageMaker 大更新,AWS 如何成为“规则改变者”?》报道。

亚马逊推出第二代 Arm 服务器芯片 Graviton2,能否快速替代 x86?

  最终,设计良好的 Arm 服务器芯片在数据中心中的表现如何将被证明。我们不必等待任何传统的和新贵服务器芯片制造商说服服务器合作伙伴来构建和支持,软件合作伙伴也可以加入并证明其堆栈和应用程序可以在芯片上运行。

  亚马逊网络服务本身就是一个生态系统,它拥有很多自己的堆栈,因此它可以像在拉斯维加斯举办的 re:Invent 上将 Graviton2 处理器发布后,Marvell,Ampere 和其人就可以尝试跟上。

  AWS 首席执行官安迪·贾西(Andy Jassy)宣布其与安纳布尔纳实验室(Annapurna Labs)共同设计的第二代服务器级 Arm 处理器,这意味着其向英特尔和 AMD 清楚地表明了,不需要 x86 处理器来运行大量工作负载。

  使用 x86 芯片运行工作负载要付出高昂的代价,无论是租用还是购买,这就是 AWS 要自己设计芯片的重要原因。显然,这还处于早期,但是,如果有一半的大型或超大规模云服务提供商也效仿并构建 Arm Neoverse 架构的定制(或勉强定制)版本,并且相当积极,那么 X86 服务器芯片年发货量可能会在很短的时间内从 X86 迁移到 Arm(两到三年)。

  微软毫不掩饰地表示其希望 50% 的服务器使用 Arm 处理器,最近已开始在其“ Olympus”机架式服务器内部署 Marvell 的“ Vulcan” ThunderX2 处理器。微软并没有透露其部署的规模,但是我们猜测它的数量为数万个,与其服务器机群中的数百万台机器无关。谷歌已经涉足相对大型的 Power 处理器,并且已经进行了一些部署,但同样不知道其规模。

  有传言称谷歌是高通 “ Amberwing” Centriq 2400 处理器最大的支持者,并且有传言称它可能会基于 Arm 架构自主设计 SmartNIC 处理器和服务器,但是鉴于专利授权问题,Google 有可能直接使用开源 RISC-V 指令集。

  阿里巴巴在过去三年一直涉足 Arm 服务器,并于 7 月宣布了基于 RISC-V 的玄铁 910 芯片。华为海思推出了 64 核鲲鹏 920,我们认为这是 Arm 推出的“ Ares” Neoverse N1 设计的一种变体,目标客户可能是中国的超大规模客户,云服务提供商,电信公司和其他服务提供商。

  实际上,我们认为亚马逊的 Graviton2 与鲲鹏 920 类似,它们可能从 Arm Ares 借用了大量设计。与所有 Arm 设计一样,它们不包括内存控制器或 PCI-Express 控制器,必须从第三方获得许可。

  去年的这个时候,AWS 推出了第一代 Graviton Arm 服务器芯片,具有 16 个运行在 2.3 GHz 的 vCPU,采用台积电的 16 纳米工艺。AWS 从未确认 Graviton 处理器是否具有 16 个不带 SMT 的内核或 8 个带双向 SMT 的内核,但我们认为它不具有 SMT,而仅仅是一个的“ Cosmos”内核,是经过调整的 Cortex-A72 或 Cortex-A75 内核。

  AWS 的 EC2 计算设备上的 A1 可支持多达 32 GB 的主内存,并通过其服务器适配器提供高达 10 Gb /秒的网络带宽,以及高达 3.5 Gb /秒的弹性块存储(EBS)带宽。我们认为该芯片只有一个带有两个通道的内存控制器,类似于针对超大规模处理器的 Intel XeonD。这并不是一个令人印象深刻的 Arm 服务器芯片,更像是一个强大的智能网卡芯片。

  “在 AWS 的历史上,一个重大的转折点是我们收购了 Annapurna Labs,这是由一群以色列非常有才华和专业的芯片设计和制造人才组成的团队,我们决定设计和制造芯片更强性能的芯片。” Jassy 在 re:Invent 的开幕主题演讲中解释道。

  “尽管包括我们在内的许多公司已经使用 x86 处理器很长时间了,英特尔是非常紧密的合作伙伴,并且我们也越来越多地开始使用 AMD,如果我们想提高性价比,就意味着我们必须做一些创新。我们与安纳布尔纳峰团队合作,我们认为它们可以在性能和真正重要的方面提供有意义的差异,我们认为人们确实在广泛地做到这一点。他们开始使用的第一个芯片是基于 Arm 的芯片,我们称为 Graviton 芯片,该芯片是我们去年在 A1 实例中发布的,这是云中第一个基于 Arm 的实例,这些实例旨在用于扩展工作流,因此是容器化的微服务和 Web 层应用程序之类的东西。”

  A1 实例有成千上万的客户,但是正如我们过去和现在所指出的那样,就吞吐量而言,它并不是一个出色的服务器芯片,至少与同类产品相比没有。AWS 知道这一点,其他人也知道。这是一种尝试。

  “当我们启动 A1 实例时,我们想知道三个问题,” Jassy 继续说道。“首先是:有人会使用它们吗?第二个问题是:合作伙伴生态系统是否会加强支持人们使用基于 Arm 的应用所需的工具链?第三个是:我们能否在 Graviton 芯片的第一个版本上进行足够的创新,以使您可以使用基于 Arm 的芯片来处理更广泛的工作负载?在前两个问题上,我们感到非常惊喜。可以在幻灯片上看到这一点,徽标的数量,客户的负载以我们未曾想到的方式使用 A1 实例,并且合作伙伴生态系统确实以非常重要的方式加强并支持了我们的基本实例。“

  ”第三个问题,我们是否真的可以在该芯片上进行足够的创新,我们不太确定,这是我们几年前开始在第二版 Graviton 原因的一部分,即使我们正在构建第一个版本,我们不知道是否能够做到这一点,这可能需要一些时间。”

亚马逊推出第二代 Arm 服务器芯片 Graviton2,能否快速替代 x86?

  据我们所知,Graviton2 更像是一个吞吐量引擎,并且看起来也可以在核心级别与现代 x86 芯片保持一致,而单线程性能是衡量标准。

  拥有超过 300 亿个晶体管和多达 64 个 vCPU 的 Graviton2 芯片,同样,我们认为这些是真正的内核,而不是线程数量的一半。我们知道 Graviton2 是 7 纳米 Neoverse N1 的变体,这意味着它是 Arm 为帮助客户加快速度而开发的“ Ares”芯片的衍生产品。根据 Arm 的说法,Ares Neoverse N1 的最高速度为 3.5 GHz,内核没有内置多线程同步功能,介于 2.6 GHz 和 3.1 GHz 之间。

  Ares 内核具有 64 KB 的 L1 指令高速缓存和 64 KB 的数据高速缓存,并且跨内核的指令高速缓存在芯片上是一致的。Ares 设计为每个核心提供 512 KB 或 1 MB 的专用 L2 高速缓存,并且核心复合体具有特殊的高带宽,低延迟通道,称为 Direct Connect,将内核连接到网状互连,该互连将片上系统的所有元素连接在一起。按照 Arm 结合 Ares 的方式,它可以在单个芯片或整个小芯片中扩展最多 128 个内核。64 核变体具有八个内存控制器和八个 I / O 控制器,以及 32 个核心对及其共享的 L2 缓存。

  我们认为 Graviton2 看起来很像 64 核 Ares 参考设计,在其中添加了一些功能。其中一项功能是内存加密,通过启动时在服务器上生成的 256 位密钥完成,并且永远不会离开服务器。(尚不清楚使用哪种加密技术,可能是 AES-256。)

  亚马逊表示,Graviton2 芯片的性能是首款 Graviton 芯片的 7 倍,浮点性能是 2 倍。第一统计数据在芯片级别有意义,而第二统计数据必须在核心级别,否则毫无意义。(AWS 含糊不清。)从 16 核升级到 64 核可为提供 4 倍的整数性能,而从 2.3 GHz 升级到 3.2 GHz 则可提供 39% 的性能提升,而一直上升到 3.5 GHz 则可提供另外的 50% 的性能。最重要的是,整体收益是原来的 6 倍。

  剩下的就是缓存体系结构,每时钟指令(IPC)和整个层次结构的内存带宽方面的改进。将浮点向量的宽度加倍很容易且足够正常。AWS 表示,Graviton2 芯片的单核高速缓存是其两倍大,并具有额外的存储通道(根据定义,它几乎必须如此),并且这些功能一起使 Graviton2 的存储速度比初代 Graviton 快 5 倍。坦率地说,令人感到惊讶的是它的速度并没有超过 10 倍,特别是如果 Graviton2 具有 8 个以 3.2 GHz 运行的 DDR4 内存通道时。

  有趣的是,AWS 将当前 M5 已经运行的 vCPU 与即将推出的基于 Graviton2 芯片的 M6g 运行的 vCPU 进行了比较。AWS 并未具体说明在哪种实例配置上使用了哪种测试,因此以下数据可能是苹果、苹果酱和保龄球的混合体。M5 实例基于 Intel 的 24 核“ Skylake” Xeon SP-8175 Platinum(主频为 2.5 GHz);该芯片是为 AWS 定制的,与库存的 Xeon SP-8176 Platinum 部件相比,内核少了四个,时钟速度(400 MHz)略高。

  以下是在每个 vCPU 的基础上,Graviton2 M6g 与各种工作负载相对于 Skylake Xeon SP 实例的堆叠方式:

  • SPECjvm 2008:+ 43%(估计)
  • SPEC CPU 2017 整数:+ 44%(估计)
  • SPEC CPU 2017 浮点数:+ 24%(估计)
  • Nginx 的 HTTPS 负载平衡:+ 24%
  • 内存缓存:性能提高了 43%,延迟更短
  • X.264 视频编码:+ 26%
  • 使用 Cadence Xcellium 进行的 EDA 模拟:+ 54%

  需要指出,这些比较使 Arm 芯片上的内核与超线程相对应(因此,单线程性能下降,从而提高了芯片吞吐量)。这些都是显着的性能提升,但是在比较中,AWS 不一定会把其最好的 Xeon SP 放在首位。EC2 C5 实例基于“ Cascade Lake” Xeon SP 处理器,所有核心睿频频率为 3.6 GHz,看起来它们有激活了超线程功能的一对 24 核芯片,可以在单个映像中提供 96 个 vCPU。

  R5 实例基于 Skylake Xeon SP-8000 系列芯片(精确到未知),内核运行于 3.1 GHz。看起来这些实例还具有一对启用了 HyperThreading 的 24 核芯片。在每个 vCPU 的基础上,它们都比 M5 实例快得多,并且在整个 vCPU 的吞吐量方面也更具可扩展性。这些 C5 和 R5 上的额外时钟速度很可能会弥补每个 vCPU 的性能差距。(但也很难确定。)

  这里的主要观点是,我们怀疑这样是否可以使 AWS 相比从 Intel 购买处理器更便宜,如果成本减少 20% 就足以做到这一点,但是 Jassy 说,价格/性能优势约为 40%。(大概是在将设计和生产 Graviton2 的实际成本与我们认为是 M5 实例中定制 Skylake Xeon SP 进行比较)。因此,AWS 推出了 Graviton2 处理器以支持 Elastic MapReduce( Hadoop),弹性负载平衡,ElastiCache 以及其云上的其他平台级服务。

  对于其他人,Graviton2 芯片将提供三种不同的配置作为 EC2 计算基础架构服务上的实例:

  • 通用(M6g 和 M6gd):1 至 64 个 vCPU 和最多 256 GB 的内存
  • 优化计算(C6g 和 C6gd):1 至 64 个 vCPU 和最多 128 GB 的内存
  • 内存优化(R6g 和 R6gd):1 至 64 个 vCPU 和最大 512 GB 内存

  “ g”表示 Graviton2 芯片,“ d”表示其具有用于实例上本地存储的 NVM-Express 闪存。所有实例将具有 25 Gb /秒的网络带宽和 18 Gb /秒的弹性块存储服务带宽。也将有裸机版本,看看 AWS 是否实施 CCIX 互连以创建两路甚至四路 NUMA 服务器还是坚持单路设计,这将非常有趣。

  M6g 和 M6gd 实例现在可用,计算和内存优化版本将在 2020 年可用。芯片,平台和软件堆栈现在都可以从同一家供应商处获得。关于服务器平台,我们什么时候可以这么说?

来自:
雷锋网

作者:Johnson
原创文章,版权所有,转载请保留原文链接。