E企研究院 · 2021年03月24日

AMD第三代EPYC处理器都改进了什么?

上周,AMD发布了基于“Zen 3”微架构的EPYC 7003系列服务器处理器,代号“Milan”(中文:米兰)。

得益于Zen 3微架构的改进与优化,相比EPYC 7002系列处理器,第三代的EPYC处理器IPC性能提升了19%左右;同时,第三代EPYC处理器还增强了安全方面的功能,以防范Spectre(幽灵)、Meltdown(熔断)等漏洞造成的数据泄露风险。

从目前AMD公布的信息来看,第三代EPYC处理器共有19个型号,核心数量从8核心到64核心不等,TDP功耗从155W到最高280W,最高主频可达4.1GHz。在内存配置方面,第三代EPYC处理器更具灵活性,除了继续支持四、八通道内存配置以外,还额外增加了对六通道内存配置的支持。

改进的“Zen 3”微架构:IPC性能提升19%

微架构对处理器性能发挥至关重要。EPYC 7003系列处理器使用Zen 3微架构,相比于Zen 2微架构,Zen 3在L1缓存、分支预测以及执行引擎等环节进行了改进和增强,使得IPC(Instruction Per Clock,每时钟周期指令)的性能提升了19%。

图片 1.png

据AMD的资料显示,性能提升主要得益于Zen 3微架构中对于缓存、分支预测、前端以及加载/存储等环节的优化。图右为各环节改进对性能提升所起到的比例(图源自AMD官方)

具体来说,在一定程度上可以分为前端、执行和加载/存储三大方面的改进,结合Zen 2微架构,可以很清晰地看到Zen 3的改进,如下图所示:
图片 1.png

相对于Zen 2,Zen 3在微架构上的改进和增强

在前端方面,Zen 3微架构提供了更大的L1 BTB,同时对分支预测进行了增强,并对操作缓存(Op-cache)进行了优化;在执行方面的改进则减少了选择器操作延迟并提升精度;在加载/存储方面则在Zen 2微架构的每周期2个加载操作和1个存储操作的基础上,增加到Zen 3的每周期3个加载操作和2个存储操作,有效提升了加载/存储带宽,并有更灵活的加载/存储操作。

相同的核心数量 更高的性能

除了Zen 3微架构的改进之外,第三代EPYC处理器依旧采用“Chiplet”的方式来组成满足不同性能需求市场的处理器型号,从处理器参数上看,似乎与第二代EPYC处理器区别不大,比如最高64核心128线程,每Chiplet共享的32 MB L3缓存,依旧7nm(CCD)/14nm(IOD)制程工艺等等,但实际上,在第三代EPYC处理器内部却做了多项改进,并有效提升了EPYC 7003系列处理器在实际应用中的性能。

图片 1.png

第三代EPYC处理器示意图,除了最高64核心128线程,以及共享32MB L3缓存之外,还有八通道的DDR 4内存(支持最新的3200 MHz内存)以及128条PCIe通道(支持PCIe Gen3/4),好像看起来与第二代区别不大

从物理外观上看,Milan(第三代EPYC)处理器与Rome(第二代EPYC)区别不大,甚至使用相同的处理器插槽,原本使用Rome处理器的服务器只需要升级BIOS就可以更换使用Milan处理器。但在Milan处理器内存,却有多项改进,最大的改进就是每Chiplet中共享L3缓存方面。

在Rome处理器中,每个CCD(Core Chiplet Die)由两个CCX(CPU Complex)组成,每个CCX包括4个核心与各自独立的L1和L2缓存,以及共享的16MB L3缓存,实际上每个核心实际上能够直接访问的L3缓存为16MB。但在Milan处理器中,每个核心都可以直接访问所有的L3缓存,即32MB直接访问L3缓存,更大的缓存意味着更好的性能。

图片 1.png
基于Zen 2架构的Rome处理器与基于Zen 3架构的Milan处理器,每个CCD上核心能够直接访问的L3缓存容量不同,Milan处理器中的每个核心都可以直接访问32MB的L3缓存

每核心可直接访问的L3缓存容量增大,在某些场景下,能够显著提升数据处理的速度。例如在某些高性能场景下,较大指令会占据高达8MB的共享L3缓存,如果是在Rome处理器上运行,每个核心用于数据实际处理的L3缓存则只有8MB,而使用Milan处理器,则可高达24MB,三倍可用的共享L3缓存。

图片 1.png
Milan处理器中,每个核心可直接访问使用的L3缓存容量提升了三倍,不仅意味着更好的容量,也意味着更低的延迟。如果L3缓存容量不够,意味着要从内存中获得数据,会极大地增大延迟

Milan处理器的另一个改进在于内存配置,增加了对六通道内存配置的支持。上一代的Rome处理器支持四通道和八通道两种内存配置,用户可以根据实际应用需求来选择成本优先或性能优先。而Milan处理器在此基础上,增加了六通道内存配置,为用户提供更灵活的内存配置选择。

图片 1.png
Milan处理器中的四、六、八通道内存配置示意图,可根据实际应用需求来灵活配置内存

除了上述性能改进之外,Milan处理器还在安全方面做了进一步增强。众所周知,在过去几年中,针对处理器本身的Spectre(幽灵)、Meltdown(熔断)等漏洞一直让企业担忧不已。发布第一代EPYC处理器的时候,AMD就将数据安全问题提升到极高的层次,在EPYC处理器中有一颗专用于安全的芯片,从Naples到Rome,再到现在Milan,AMD不断对EPYC处理器中的安全功能进行增强。

图片 1.png

在安全方面,AMD在处理器上设计了诸多防范功能,比如信任根、内存加密、虚机内存加密等等功能,帮助企业应对各种安全问题

19款处理器产品 针对三大典型场景

AMD目前公布了19款Milan处理器型号,核心数量从8核到64核不等,TDP功耗也从最低155W到最高280W不等,与Rome参数相同,支持八通道DDR4内存,最高4TB内存容量以及128条PCIe 4.0通道,但性能更高。

图片 1.png
AMD公布的Milan处理器型号,一共19款,不同核心数量与不同的处理器频率,决定了TDP功耗高低不一

根据这19款Milan处理器的不同核心与主频,以及TDP功耗,AMD将其大致分为三大应用市场:高性能需求型、多核密度需求型以及均衡型。

图片 1.png

根据Milan处理器中的不同性能与功耗,大致可面向三种不同的应用市场

苛刻性能需求型:尽管单颗处理器的核心数量要少一些(最高32核心),但主频更高,例如72F3处理器,其最高可达4.1GHz主频。对于某些特定应用而言,相比于多核心,高主频更能提升应用性能。

多核密度需求型:最典型的应用场景就是公有云市场,更多的核心能够容纳更多的云主机,能够带来更高的受益;更多的核心还意味着对服务器数量需求的降低。

疫情发生以来,远程会议及协同办公需求井喷。2020年1月29日-2月6日,8天腾讯会议紧急扩容超过10万台云主机,投入的计算资源超过100万核。鲜为人知的是,本次腾讯会议扩容的100万核服务器资源全部由腾讯云自研的服务器星星海提供支撑。星星海也是腾讯联手AMD,基于AMD罗马(Rome)平台(第二代EPYC处理器)下深度定制CPU,通过腾讯云的基础架构能力和AMD CPU特性的高度融合,实现行业卓越单核性能和单核TCO;根据测试,星星海可以实现云服务实例综合性能提升35%。

均衡型:面向通用服务器市场,兼顾性能与功耗。这一分类的Milan处理器TDP功耗基本都控制在225W以内。就通用服务器市场而言,大多采用服务器内部风扇进行散热(俗称“风冷”)。

业内主流认为,风冷散热服务器的TDP功耗不能超过240W,当然也有经过特殊设计的“风冷”服务器可支持最高TDP 280W的EPYC处理器,比如Dell EMC推出的PowerEdge R7525服务器。

自从AMD于2017年推出第一代EPYC处理器(代号:Naples,那不勒斯),2019年推出第二代代号Rome(罗马)的EPYC处理器,以及2021年的第三代EPYC处理器(代号:Milan,米兰),性能不断提升,其生态合作伙伴也不断增加,除了前文提到的腾讯“星星海”服务器之外,还有发布第一代EPYC处理器就与AMD达成战略合作的百度。

图片 1.png

除了传统的OEM和ODM服务器供应商之外,公有云供应商也是AMD的重要合作伙伴,可以看到,几乎世界上几大主流的公有云服务商都规模部署并使用了EPYC处理器,从AMD透露的信息,国内领先的阿里云也加入到EPYC的生态系统之中

五年来,AMD按序就班地更新EPYC处理器,极大地增强了用户市场的信心,也推动了EPYC处理器生态系统的完善。同时,EPYC处理器以其强劲的性能和适宜的性价比,也正不断巩固并扩大用户市场。

推荐阅读
关注数
5021
内容数
335
E企实验室由E企研究院专职产品技术分析师针对数据中心、云计算、AI和5G等领域最新技术和应用研究、验证、试用、分析,数据中心级新产品新技术的市场教育,国内唯一同时研究互联网和传统企业IT基础设施的机构和部门
目录
极术微信服务号
关注极术微信号
实时接收点赞提醒和评论通知
安谋科技学堂公众号
关注安谋科技学堂
实时获取安谋科技及 Arm 教学资源
安谋科技招聘公众号
关注安谋科技招聘
实时获取安谋科技中国职位信息