2018年,亚马逊云科技发布基于Arm架构的第一代 Graviton 芯片,为云计算厂商自研通用处理器开创了先河。
随后的数年中,越来越多云厂商已经意识到,企业客户对云上算力效能的追求永无止境,要满足这种需求,只有从底层芯片开始对算力进行全面重塑。
而Graviton系列芯片也没有停止自身前进的脚步。在不久前举行的2023 re:Invent峰会上,亚马逊云科技发布了最新一代自研处理器Graviton4以及基于Graviton4的R8g实例。
相比上一代产品,Graviton4拥有更多的核心,更高的内存带宽,在性能和能效方面也有很大提升。
与此同时,Graviton4面向真实世界工作负载,而不是面向跑分的性能优化,能真正提升用户的实际使用体验。
截止到2023年年底,亚马逊云科技用了200多万块Graviton处理器,推出了150多个基于Graviton的云主机,有超过5万家用户。
其中,前100大EC2用户们,也都在用基于Graviton处理器的云主机。
总体而言,提升还是比较有诚意的。
从公布的数据来看,Graviton4的计算性能整体比Graviton3提高了30%。其中,运行MySQL数据库的性能提高40%,运行大型Java应用的性能提高45%。
先来看看Graviton4的主要参数一代到四代Graviton
从肉眼可见,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处理器以及对应的云主机,确实给服务器市场带来了很大影响。
如今,Graviton芯片的应用范围已经极大拓展。这点从亚马逊云科技TOP100 客户也在使用 Graviton实例就可以看出。比如SAP在使用 Graviton 服务之后,将成本降低了35%,而且分析速度更快,同时减少了45%的碳排放量。
5年内接连推出4代芯片的亚马逊云科技,用Graviton探索出一条云厂商自研芯片的发展路径:每一代芯片都带来了更高的性能、更丰富的选择和更低的成本,从而满足企业对云上算力效能无止境的需求。
END