原本以为去年就会登场的Graviton 4,这次终于来了!
亚马逊云科技在2023年的re:Invent上发布了第四代自研Arm处理器Graviton 4,更多的核心,更高的内存带宽,让Graviton 4在性能和能效方面又有很大进步。
与此同时,面向真实世界工作负载,而不是面向跑分的性能优化,能真正提升用户的实际使用体验。
截止到2023年年底,亚马逊云科技用了200多万块Graviton处理器,推出了150多个基于Graviton的云主机,有超过5万家用户。其中,前100大EC2用户们,也都在用基于Graviton处理器的云主机。
总体而言,提升还是比较有诚意的。从公布的数据来看,Graviton4的计算性能整体比Graviton3提高了30%。其中,运行MySQL数据库的性能提高40%,运行大型Java应用的性能提高45%。
先来看看Graviton 4的主要参数
从肉眼可见,Graviton4跟Graviton3一样,都采用了Chiplet技术,Chiplet技术也是Arm非常推荐的技术路线。
亚马逊云科技首席布道师Jeff Barr在博客中提到,Graviton4采用的是96个Neoverse V2核心,每个核心独享2MB的L2缓存,内存方面提供12个DDR5-5600通道。
对比之下,上一代Graviton3核心数是64,这次直接提升了50%。内存带宽从之前的307GB/s提高到了536.7GB/s,整体提高了75%以上。L2 Cache也从1MB提升到了2MB,这些对性能的提升有很大帮助。
Neoverse V2 核心也叫被称作”Demeter”核心,它基于ARMv9架构,主要面向HPC、云计算和超大规模数据中心市场。
ARM官方数据宣称,与基于ARMv8架构的Neoverse V1核心相比,Neoverse V2 的IPC提升了40%。此前,Graviton3和Graviton3E采用的就是Neoverse V1核心的ARMv8架构。
Graviton4面向真实世界工作负载而优化
从Amazon EC2 副总裁David Brown的介绍中看到,Graviton的设计是面向实际工作负载而优化的,而不是面向跑分而优化的。
为了说明什么是“为了实际工作负载而优化”,他分享了这样一张看似复杂,实际很简单的雷达图。
雷达图列举了CPU微架构中涉及的主要参数特性,具体又分成前端和后端两大部分。
前端主要是指令相关的部分,而后端则是功能执行单元为主。当然,前后端之间还有指令控制器,负责把前端解码出来的操作分发指令给执行单元。
CPU微架构需要前后端紧密协作。如果前端效率不高,会导致后端的执行单元空等新指令,从而造成性能瓶颈。如果后端效率不高,执行的速度太慢,新指令进不来,那一样会导致性能瓶颈。
雷达图里还有数值,数值越小表示工作负载对该参数特性的依赖性越低,这意味着CPU的这一参数特征对整体性能的影响较小。
换句话说,低数值表明处理器在该工作负载下更有效率,数值越高表示该工作负载对它的依赖更高。有了这个雷达图,就能让CPU设计者面向实际工作负载做优化,而不是按照基准跑分测试的结果来优化CPU。
上图展示的是跑分测试时的一个情形,它会放大某些参数特性的影响。比如这里看到L3缓存那一项的数值特别的高,这会导致Back-end Stalls的值很高。此时,后端不能再接受新的指令了,这将造成性能瓶颈。
这张图右边三个雷达图展示的是Cassandra、Grovy以及Nginx,这三个应用在处理真实世界工作负载时受不同参数特性影响的情况。可以看得出来,这些应用同时受到多个不同参数特性的影响。如果要对真实世界的工作负载做优化,就是得想办法降低这些数值。
比如,像Graviton4相对于Graviton3做的事儿一样。如上图所示,Graviton4在运行MySQL时,在多个维度上的数值都有所下降,最终带来40%的性能提升。当然,这跟内存带宽等规格的提升也有很大关系。
无论如何,最后这张雷达图上展示的,就是Graviton4面向真实世界的工作负载优化。
Graviton4首发护航的EC2云主机
除了规格的提升,面向真实世界工作负载的优化,面对日益复杂的安全威胁,Graviton4在安全方面也有新内容。Graviton4不仅继承了前一代处理器中的安全特性,还新增了加密的高速硬件接口来以保护数据的安全性和完整性。
同时,Graviton4还新增了分支目标识别(BTI-Branch Target Identification )功能,它可以用来确保代码分支跳转到正确的目标地址,防止恶意软件利用代码中的跳转指令跳转到意图以外的代码段,从而提高系统的安全性。
与往年一样,新的Graviton4处理器也带着采用该处理器的新款EC2主机,相伴而来。
这次护航发布(预览版)的首款EC2是R8g,R8g属于内存优化型实例,相较于上一代的R7g,R8g的vCPU数量和内存容量都提高了三倍。
这使得R8g在面对高性能数据库,大数据分析等有大量数据集的场景时更有优势。R8g的发布给内存敏感型负载提供了更高的性价比和能效表现。
2018年,亚马逊云科技发布第一代自研Graviton处理器,亚马逊云科技成了第一个开发自研通用服务器处理器的云厂商,这也是Arm服务器阵营重新站起来的标志性事件。
早期用户拿Graviton处理器运行微服务和Web应用,成本节省了很多,为了扩大优势,后来又发布了性能更强的Graviton 2,再然后推出的Graviton 3在性能和能效方面的表现继续提升。
其实,去年还发布了Graviton3的升级版——Graviton3E,它主要优化了在浮点运算和向量运算场景中的表现,这种都是高性能计算领域才比较关注的能力。
现在看来,2018年亚马逊云科技发布的Graviton处理器以及对应的云主机,确实给服务器市场带来了很大影响。凭借更多核心带来的高性能,单核单线程的稳定性能输出,超高的能效比优势,还有肉眼可见的成本优势,Arm终于在数据中心服务器市场抢占了一席之地。
随后有第三方Arm服务器厂商也接连推出了多款Arm处理器,这些处理器陆续被一些云厂商所采用。前不久,另外一家国际性的公有云大厂宣布推出了128核的Arm处理器,无疑是Arm阵营的又一次胜利。
这些Arm处理器经常会被云厂商自己用在自家提供的服务中,包括各种托管服务和Serverless服务,Arm已是数据中心不可缺少的一部分,而造成这种新局面的带头人,就是亚马逊云科技。