2018年10月,Arm首次宣布推出面向云到边缘基础设施产品Neoverse及其初步路线图,并承诺平台效能30%的年增长率指标将持续到2022年及以后。日前,Neoverse再度进阶,新增两个全新的平台—Neoverse V1平台以及第二代的N系列平台Neoverse N2。
图1:Arm Neoverse平台路线图
显著增长的竞争力
简单回顾一下Neoverse平台的演进历史。
最早的“Cosmos”平台基于16nm工艺,采用A72、A75核心,在当时公布的路线图中,Arm就提出了每年每代产品30%的性能提升目标。2019年初,N1和E1平台被公布,相比“Cosmos”,N1单线程性能提升了60%,超出预期一倍,云端负载性能提升2.5倍;E1吞吐量性能提升超过2.7倍,吞吐效率提升超2.4倍,计算性能提升超2倍。
图2: 2019年推出的N1平台相比“Cosmos”单线程性能提升了60%
根据Arm基础设施事业部高级副总裁兼总经理Chris Bergey给出的信息,Arm近两年在服务器市场取得了一系列的重要进展:
- 在前7大互联网公司中,有4家企业公开宣布采用Arm技术,包括腾讯宣布TARS微服务开发框架已成功移植至Arm CPU架构;百度在其数据中心采用基于Arm架构的智能计算;亚马逊AWS云在自己的云服务器上进行基于Arm架构的自研项目开发等。
- 在高性能计算HPC领域,以Arm技术架构为基础的“富岳(Fugaku)” 超级计算机名列TOP500排行榜第一;
- 在整个5G生态系统厂商中,从L1到传输的整个堆栈及新兴OpenRAN和VRAN计划,Arm都获得了一系列重设计项目;
- 在基础架构和边缘应用领域,Arm已推出uCPE转Arm以及Project Cassini计划,并将在两周后的Arm DevSummit大会上更新Project Cassini第一年的进展。
图3为N1公开的测试数据,Chris Bergey认为无论是在存储、移动还是计算数据领域,N1都表现出了优良的性能。
图3:N1性能测试数据
图4则将基于传统架构的机架与基于Arm Neoverse的机架进行了对比。可以看出,在同为标准42U机架和12.5KW功率条件下,Arm Neoverse平台提供了更高的整数吞吐量和单线程性能,使得云服务商得以在单个机架上托管更多客户,从而带来更高收入和更多计算周期。
图4:基于传统架构的机架与基于Arm Neoverse的机架对比
之所以能取得这样的成绩,Chris Bergey认为一方面与Arm工程团队的努力和投入密不可分,另一方面,也与Arm自身软件生态系统的逐渐成熟有很大关系,例如越来越多的云原生软件现在均可以无缝运行在Arm架构服务器上。
异构计算的推动力也不容小觑。除了很多异构计算的产品与方案均基于Arm架构外,在数据中心里,无论是存储还是数据加速,整体趋势是分布式的,对性能和功耗都提出了严苛的要求,因此无论是基于何种硬件架构(FPGA、GPU、TPU)的加速器,数据的移动是必不可少的。对Arm来说,如何提供紧耦合或是定制化的能力,甚至是通过多核封装或多芯片组装技术,将来自生态系统、IP技术与云厂商的需求与技术整合在一起,是很大的机遇。
开启终极性能之路
根据Neoverse平台PPA设计原则,N系列强调性能、功率、面积得到同等考量,擅长可扩展;E系列主要关注效率,对于网络流量和数据应用程序非常有效,在功耗和面积的缩减上进行优化;V系列旨在提供最佳性能,需要添加更大的缓存、窗口和队列,相对来说会消耗更多面积和功耗。如果客户更看重线程需求,N系列就比较合适,假若客户需要高性能计算工作负载,V系列就能提供更大的价值,这完全取决于客户在功耗、性能、面积上的需求与配置。
图5:Neoverse平台PPA设计原则
V1作为V系列的第一个平台,主要面向7nm和5nm工艺而设计。与N1相比,其单线程性能提升超过50%,支持256位宽度的向量,适用于高性能计算、高性能云和机器学习处理等对CPU性能与带宽有更高要求的应用。值得一提的是,V1是Arm第一个支持可伸缩矢量扩展(Scalable Vector Extensions,SVE)的处理器平台。SVE可基于未知宽度向量单元的软件编程模型执行单指令流多数据流(SIMD)整数、bfloat16、浮点指令,从而确保软件编码的可移植性与使用寿命,并兼顾高效的执行。
图6:Neoverse V1性能详述
Chris Bergey表示对开发者而言,SVE架构的好处在于能够帮助他们在寄存器宽度之间无缝转换,也就是说,开发者们既可以合并新的宽向量SVE指令,也可以重新使用为较小的寄存器编写的辅助函数。“富士通A64FX CPU就是一个很好的例子,在执行SVE代码时,他们可以完全控制SVE电压和频率转换,确保其可以全天全频率运行。”他说。
N2被定位为可提供更高性能计算的解决方案,用来满足横向扩展的性能需求,其用例可横跨云、智能网卡(SmartNICs)、企业网络到功耗受限的边缘设备。N2面向5nm工艺而设计,支持PCIe 5.0和DDR5,通过支持用于高带宽存储器的HBM3以及用于结构的CCIX 2.0和CXL 2.0来进一步扩展。此外,相比于N1,N2在保持相同水平的功率和面积效率之余,单线程性能提升了40%。
图7:Neoverse N2性能详述
下图中,X轴代表芯片级性能,Y轴代表每线程性能。可以看出,在128核/128线程下,N1在芯片级吞吐量和单线程性能方面都达到领先,N2性能更强,代表着最高单芯片性能;V1在96核96线程下拥有最高单线程性能,意味着可以在核心数更少的情况下发挥更好的性能。
图8:Neoverse N1/N2/V1芯片级性能/单线程性能
软件,“装机即用”
除了处理器内核,Arm还为合作伙伴提供可扩展性的交换网,用以支持大量的处理器核。同时,针对加速器的缓存一致性互联(CCIX)与开放互联技术(CXL)的投资则可以确保其生态系统得以快速且高效地推出相关的技术。
图9:V1/N2均支持CCIX/CXL标准
软件生态方面,Arm通常将软件分为两种类型:一是云原生软件,二是传统企业级软件。Chris Bergey说云原生软件是Arm一直以来相当重视的领域,拥有最大的持续集成/持续交付(CI/CD)平台,并在大多数编程语言的生态环境中扮演着核心角色。而Project Cassini项目的推出,也是因为看到云原生技术在边缘计算和5G领域变得越来越重要,Arm希望能够为软件开发者提供流畅的体验,通过标准、平台安全性与参考实施,让行业伙伴对在Arm平台上部署“装机即用”的软件充满信心。
图10:构建软件生态
而在传统企业软件领域,“软件即服务”(SaaS)正成为显著趋势。由于在Arm架构之上能够创造非常有利的软件即服务产品,因此很多独立软件开发商(ISV)开始对Arm表现出浓厚的兴趣,在中国市场尤其显著。目前,包括Xen、KVM、Docker容器以及越来越多的Kubernetes在内的基础软件都已经陆续宣布支持Arm架构,许多初期由Arm推动的开源项目正在变得自主运转。