首页资讯科技 酷睿第三代处理器

酷睿第三代处理器

AMD EPYC 7003系列处理器技术架构解析在AMD Zen 3消费级处理器产品大获成功之后,AMD的眼光又转向了企业级、云计算以及HPC市场。这一次,AMD带来了全新的AMD EPYC(霄龙)7003系列处理器,最高64核心128线程…

酷睿第三代处理器

AMD EPYC 7003系列处理器的技术架构分析

在AMD Zen 3消费级处理器产品获得巨大成功后,AMD的目光转向了企业、云计算和HPC市场。这次AMD带来了全新的AMD EPYC(骁龙)7003系列处理器,最高64核128线程,最高性能超过竞争对手117%,以高主频为特色的“F”系列产品,都让骁龙7003系列处理器充满了强大的竞争力,值得我们细细品味。

AMD的EPYC系列处理器于2017年6月20日正式发布。经过4年多的发展,EPYC系列处理器已经成为企业、超级计算机和加速计算市场中最重要和最值得购买的处理器产品之一。EPYC系列处理器经历了多代发展,从代号为Naples的第一代EPYC 7000系列处理器到2019年8月即将问世的代号为Rome的第二代EPYC 7002系列处理器,再到此次发布的采用Zen 3架构、代号为Milan的第三代EPYC 7003系列处理器。AMD采用了先进的工艺技术,创新的核心设计和独特的

在AMD EPYC 7003系列处理器上,AMD声称将继续从三个方面在产品设计上不断努力:按照路线图提升性能,为产品提供有竞争力的性能和更强的安全性,增加计算加速带来的价值。AMD给出的EPYC 7003系列处理器整体性能评测包括三个方面,即企业级性能提升(基于SPECjbb2015测试)和云计算性能提升(基于SPECrate?2017_int_base测试),高达两倍的HPC性能提升(基于SPECrate?2017_int_base测试)。因此,EPYC 7003系列产品确实值得期待。

EPYC全面发展:AMD Zen 3架构落户

对于AMD这种多领域厂商来说,一个处理器核心架构的设计基本决定了未来几年的产品发展方向。从Zen开始,AMD的核心架构设计就开始突飞猛进,不断完善和扩展,充分挖掘架构的潜力。现在,AMD全新的Zen 3架构已经应用于桌面和移动锐龙系列处理器。AMD四大产品线中,只有HEDT平台的thread ripper和商用的EPYC系列没有更新。在EPYC 7003系列处理器上,Zen 3终于到来了。

Zen架构:IPC性能提高19%

AMD的Zen 3架构设计的变化和一些细节已经介绍过很多次了。简单来说,对于企业用户来说,AMD的Zen 3架构有四大改进。它们是增强的分支预测能力、更强的整数吞吐能力、双INT8单元和更强的浮点能力、大大降低的内存延迟等。AMD通过架构设计的改进,在Zen 3上实现了19%的IPC提升,大大提升了处理器的单核执行能力。更具体地说:

1.Zen 3架构采用SMT设计,每个核心2个线程。

2.Zen 3架构应用了最先进的分支预测设计,可以有效避免分支预测错误和空气泡等问题。

3.缓存方面,Zen 3的一级指令缓存和一级数据缓存均采用8路设计,容量为32KB。Op缓存部分支持4K指令排序,二级缓存采用数据和指令混合方案,8路,容量512KB。

4.在前端指令解码方面,Zen 3每个周期可以执行4条指令解码(仍然是4发布设计)或者从Op cache取8条指令。对于整数或浮点数据,每个周期可以调度6条宏指令或微指令。这里Zen3仍然采用协处理器执行模式,可以同时执行整数和浮点运算,分别执行。

5.Zen 3的执行部分也得到了加强。现在Zen3的整数执行单元有四个整数ALU单元,一个带分支预测的ALU单元,三个AGU单元和一个专用的分支预测单元。由于有3个AGU单元,在地址计算方面,Zen 3每个周期可以执行3次地址计算。浮点计算部分是Zen 3的重点之一。Zen3现在有六个浮点计算单元,每个周期可以执行两个256位浮点乘积累加单元(FMAC)。

6.内存单元部分,Zen 3的内存单元现在每个周期可以执行3次数据加载,或者1次数据加载和2次数据存储。这种混合模式也提高了数据存储效率。

此外,AMD还给出Zen 3架构与之前Zen 2架构的对比。与AMD的Zen 2架构相比,AMD的Zen 3在前端、执行、读取和存储方面最重要的改进有:

一些前端改进包括:

● L1 BTB的产能增加了一倍,目前产能为1024台。

●提高了分支预测单元的带宽。

●“No空bubble”分支预测单元模式

●你可以更快地从错误的预测中恢复过来。

●运算缓存的排序速度更快

●更细粒度的Op cache流水线切换执行部分:

●整数部分有一个专用的分支预测和地址选择器。

●整数部分具有更大的执行窗口(增加了32个单位)

●通过Ops减少整数和浮点指令选择的延迟。

●浮点计算部分现在改为6个单位。

●浮点MAC计算减少了1个周期的读取和存储单元;

●更高的读取和存储带宽(分别增加1个单位)

●更灵活的装载和存储操作

●改进的内存依赖检测

●TLB的助行器从2个增加到6个。

安全特性:全方位强化

除了以上这些,AMD还在Zen 3的指令集上做了一些增强。带来了新的指令集,包括INVLPGB、AVX2-VAES/VPCLMULQDQ、SEV- ES增强、安全嵌套分页、CETShadow堆栈、用户内存保护密钥等。,面向内核函数,浮点计算(AVX2,主要针对浮点计算,加密解密等。)和安全功能。

在安全功能方面,AMD特别提到新的EPYC系列处理器和Zen 3架构大大增强了这些功能,包括专门设计的增强SEV- ES功能,主要限制中断的注入,限制恶意管理程序注入SEV- ES来宾中断/异常类型,还可以在交换状态中添加调试寄存器。这样的功能可以很好的防止之前类似“吹”“鬼”这样的攻击生效。此外,AMD还增加了SNP安全嵌套分页,主要基于虚拟机内存和虚拟机寄存器的加密和保密功能,进一步增加了对系统完整性的保护,以防止恶意程序的攻击,而新的CET ShadowStack功能可以防止ROP攻击等。

本文总结了AMD从第一代EPYC处理器到第三代EPYC处理器在安全特性方面的努力。比如面对“fuse”、“ghost”等攻击,第一代EPYC系列处理器只能使用固件或者SO/VMM进行防御,也就是基本控制在软件层面。虽然已经领先于竞品,但是相对来说缺乏安全感,而且性能损失较大。从第二代EPYC系列处理器到全新的第三代EPYC系列处理器,AMD在硬件层面做了独特的设计,现在可以实现硬件和OS/VMM层面的双重防御,安全性能更好,性能损失更低。总的来说,在引入Zen 3架构后,AMD的新EPYC 7003处理器在性能和安全特性方面都有了显著的进步。尤其是针对商业安全特性,AMD也做了针对性的增强,后面会有更详细的说明。

AMD EPYC 7003系列处理器的SoC设计概述

除了CPU架构,AMD在处理器SoC级别的设计上也是相当独特的。EPYC 7003是一款面向企业用户、HPC和云计算的处理器。它的设计有什么特点?

SoC的宏观结构:Chiplet 9芯片设计

让我们来看看EPYC 7003系列的新功能。除了之前详细介绍的Zen 3架构之外,EPYC 7003系列还带来了SoC级别的增强存储性能。AMD特别指出,EPYC 7003系列处理器是目前x86处理器中L3容量最大的,平均每个核心最高可分配32MB。内存支持4通道、6通道、8通道内存交错,其中新增6通道内存配置模式。

在可升级性方面,EPYC 7003系列处理器和之前的EPYC7002系列处理器采用了相同的插槽方案。用户只需要更新主板的BIOS就可以无缝升级到全新的产品,进一步降低了厂商的购买和使用成本。最后,EPYC 7003系列产品的安全特性得到了进一步加强(不仅仅是Zen 3架构)。

AMD展示了EPYC 7003系列处理器在SoC层面的宏架构图。这款EPYC 7003系列处理器依然采用小芯片设计,1个IO芯片加8个计算芯片。整个处理器的布局依然是IO核位于中央,周围一共排列了8个CCD计算芯片,总共9个芯片组成了整个EPYC 7003系列产品的SoC。

全新zen3cd架构:每核高达32MBL3高速缓存

进一步说,EPYC 7003的CCD应该和桌面锐龙处理器的CCD基本一致,即一个CCD包含8个Zen 3架构的CPU核,每个CPU核都有自己的L2缓存和一个共享的32MBL3缓存。核心的这一部分是由TSMC的7纳米工艺制造的。在Zen 3架构的锐龙处理器上,AMD使用的7nm工艺得到了升级,因此在频率和功耗方面表现更好。在EPYC 7003系列产品上,AMD表示仍然采用改进的7nm工艺。

在CCD方面,AMD之前提到新的EPYC 7003系列处理器可以为单核配置高达32MB的L3缓存。一方面是因为Zen 3架构,才能实现如此大容量的L3缓存配置。Zen 3架构在SoC级别将Zen 2架构的两个CCX合并到一个CCD中,所有八个内核共享32MB L3缓存。这部分在本刊之前对锐龙5000系列处理器的介绍中有详细解释。这里需要强调的是Zen2和Zen 3在缓存使用机制上的一点区别。在Zen 2上,四个核心共享16MB缓存,其中8MB缓存用于存储所有核心使用的共享数据,其余8MB缓存分配给四个核心,平均每个核心2MB。

在Zen 3上,八个核心共享32MB缓存,其中8MB仍然用于所有核心存储共享数据,其余24MB可供每个核心使用,理论上每个核心最大24MB。如果所有内核平均分配,每个内核都可以获得3MB L3缓存。与Zen 2的设计相比,Zen 3的方案由于核心可用缓存数量的增加,提高了命中率。比如在一些指令密集型的应用中,这类应用占用的缓存并不多,但是需要更多的核心操作,所以可能只需要8MB的共享缓存就可以满足需求,剩下的24MB缓存可以被其他操作占用。所以AMD改进了核心设计来提高缓存命中率,体现在大量应用中效率和性能的提升。其次,EPYC 7003系列处理器可以为单核配置高达32MB的三级高速缓存的另一个原因是由于其自身的设计。以AMD EPYC 75F3处理器为例。这款处理器有32个核心,但还是采用9芯片的方案。也就是说,EPYC 75F3仍然保留了所有的CCD和32MB缓存。因此,对于每个CCD,其四个核心将能够使用32MB缓存,这在理论上可以进一步提高缓存敏感型应用程序的性能。

在最极端的情况下,例如EPYC 72F3处理器具有8个核心,它也可以以这种方式实现。实际上,每个CCD保留一个内核,可以使用完整的32MB缓存。虽然这种方式成本较高,但是一个Zen 3核得到32MB L3缓存,在这一代的架构设计下,可以将缓存敏感应用的性能大幅提升到极限值,单线程性能也会有一定程度的提升。同时保留了8通道内存、128通道PCIe 4.0等技术规格,让这款产品在顶级商用市场找到自己的位置。

内核的特点:内存支持

AMD还特别提到了IO核对内存控制器的改进。目前IO核的内存控制器最多支持8路DDR4 3200 ECC内存,支持的内存类型有RDIMM、LRDIMM、3DS、NVDIMM- N..内存容量方面,如果按每两个DIMM一个通道计算,一个处理器插槽最高可支持4TB内存,也就是说一个DIMM最高可支持256GB内存。

为了进一步说明AMD在内存控制器上的设计,AMD还用了一张PPT来说明内存交错的配置方式。AMD处理器内存的通道用A、B、C、D、E、F、G、H八个英文字母命名,如果只使用四个通道,那么C、D、H、G的DIMM1需要启用,总共组成四个通道。如果是8通道的话,启用全部8个通道的DIMM1就足够了,相关的DIMM0处于空空闲状态不会影响多通道运行。此外,AMD这次还特别加入了6通道设计,这是在上一代4通道和8通道之间插入的新模式,相比4通道和8通道可以获得更好的平衡性能和成本。在6通道方案中,F和B通道不需要插入内存,其余通道只需要插入DIMM1中的内存。

关于EPYC 7003系列处理器的内存支持,AMD认为,如果用户使用AMD推荐的内存通道方案,将有助于避免内存通道过热,也就是说,在之前的方案中,一些内存通道可能会被系统重复调用,导致内存通道过载,从而影响性能。新方案能更好地平衡工作负载,降低内存配置成本和所需内存量。

IO的特点:安全控制

除了八个CCD,EPYC 7003系列处理器中最大的芯片是IO核。IO内核包含AMDSecure处理器、多达8个通道的DDR4内存控制器、安全控制中心和PCIe控制器。PCIe控制器方面,EPYC 7003的PCIe控制器可以兼容PCIe 3.0和PCIe 4.0,最多128个PCIe通道。然而,这些通道也可以分配给SATA或其他内部互连,因此一个IO内核可以支持多达32个SATA或NVMe设备,并且有162个可配置的通道。同时,IO核还有一个服务器的互联控制中心,提供包括USB、UART、SPI、LPC、I2C等模块。,并提供外部互连功能。

下面详细介绍一下安全处理器。安全处理器是一个32位微控制器,可以独立运行相关的安全操作系统和核心功能。其具体功能包括专用安全子系统、安全引导、硬件可信引导、SME(安全内存加密)、SEV- ES、SNP等功能。本文之前也介绍了SEV- ES和SNP。不过AMD在这里特别提到了硬件验证启动技术。首先,AMD的安全处理器将加载芯片上的ROM,并读取硬件信任根文件,这是一个在芯片上有固定位置的验证文件。然后,在操作系统内核开始读取BIOS代码之前,将根据信任根文件的内容来验证BIOS。BIOS通过安全认证后,系统将加载包括操作系统和虚拟机在内的应用程序。

在数据安全方面,AMD还提供密钥管理,实现端到端的数据加密。比如从rom到DIMM,密钥管理的相关功能都可以加密数据。该功能有几种模式,一种是SME安全内存加密,只要系统复位就会生成单个随机密钥加密数据;另一种模式是内存加密虚拟化SEV模式,也包括前面提到的SNP功能。SEV模式可以为虚拟机提供单独的密钥,也可以为每个来宾的登录过程提供单独的密钥,并且可以由安全处理器使用和控制。AMD声称该模式下可用的按键数量为509个,与上一代产品相同。以上两个函数配合SNP、SEV和SEV-SE,可以完成对虚拟机安全登录的控制和管理。

从AMD的安全功能方面来说,其实相当于AMD在IO核上内置了专用的安全处理器和专用的操作系统。它以只读和隔离控制的方式将安全核心的运行与外部操作系统和虚拟机隔离开来,并在内核级生成密钥进行安全处理,从而形成一个高于现有操作系统或应用层的独特安全层。传统意义上,所有的操作和控制,包括BIOS,看起来都是基本的,都需要经过安全处理器和相关安全功能的验证,才能正常运行。这不仅使数据更加安全,也带来了整个系统更强的抗攻击能力。随着CPU的新指令集和各种安全功能的出现,处理器的安全特性得到了极大的提高。

在这部分的最后,我们来看看IO核的流程。此前,AMD在锐龙5000系列处理器的IO核中使用了Grofond的12nm工艺。因此,AMD可能会在新的EPYC 7003系列处理器中采用相同的方式,即IO核心仍然使用Grofond的12nm工艺。实际上,对于EPYC处理器来说,IO核的区域集成了内存控制器、缓存、PCIe控制器、连接所有核的Infinity Fabric、各种功能单元接口等。,所以内部结构不仅非常复杂,而且晶体管数量也不小。其实在Grofand的12nm工艺下IO核的面积是很大的。目前没有具体的IO核心面积数据,但目测基本相当于4 ~ 6个CCD核心。AMD未来可能会进一步升级IO核的工艺。

AMD EPYC 7003系列处理器:型号和性能

在了解了EPYC 7003系列处理器的核心架构和SoC设计之后,让我们来看看EPYC 7003系列处理器的型号。说实话,EPYC这款面向企业和商业用户的处理器,在型号上很可能非常复杂,难以区分。但AMD显然在机型的梳理上下了很大功夫,从核心数量和用途两个方面进行了总结,让大部分用户一眼就知道自己需要什么,应该选择什么。我们先来看看所有处理器支持的技术特性。目前,所有EPYC 7003系列工艺都支持8通道DDR4 3200、最大4TB内存、128通道PCIe 4.0、SMT技术、Turbo频率加速、18Gbps AMD Infinity Fabric总线、SME和SEV安全功能、IF总线和内存时钟同步。在支持所有技术特性的基础上,AMD将处理器核心数量分为七个等级,分别是64核、56核和48核、32核、28核、24核、16核和8核,共19个型号(部分产品为带后缀“P”的单通道产品,因此表中只有15个)。

溪流

Stream是业界最流行的全面内存带宽性能测量工具之一。与硬件厂商提供的理论最大内存带宽不同,用fortran和C这两种先进高效的语言编写的Stream在测试中可以充分发挥内存的容量。流包含四个操作:复制、缩放、添加和三元组。Triad结合了前三种操作,所以它的测试结果更有参考价值。

对比参考处理器的规格和参数,不难看出第三代AMDEPYC处理器的理论内存带宽与EPYC 7742是一致的。根据我们的测试结果,三款第三代AMD EPYC处理器在双通道系统中的实际内存带宽基本相同,并且略微领先于双通道EPYC 7742。

NAMD

NAMD是由伊利诺伊大学香槟分校贝克曼高级科学技术研究所的理论和计算生物物理小组开发的并行分子动力学代码。它主要用于大型生物分子系统的高性能模拟。在本测试中,我们主要通过NAMD来检查参考处理器的浮点性能。

从我们的测试结果中,我们可以看到,在相同的内核和线程数量下,由于更高的基频和浮点性能的改善,双路EPYC7763在NAMD的性能优于双路EPYC 7742约3%。此外,测试结果显示,双通道EPYC 7713的性能略逊于双通道EPYC 7742。我们认为这是因为EPYC 7713的基频略低于EPYC 7742的基频。

心脏出血

OpenSSL广泛用于保护服务器之间的通信,这是许多服务器堆栈中的重要协议。OpenSSL测试主要包括两个部分:生成签名和验证签名。这次我们主要进行生成签名测试。

测试结果表明,双向EPYC 7763在我们的测试中每秒可以生成27163.2个签名,其签名效率比双向EPYC 7742快约2%。此外,即使EPYC 75F3的内核和线程数量只有EPYC 7742的一半,但EPYC 75F3处理器的“高频率”特性使其在OpenSSL中表现出色——本次测试中双向EPYC 75F3的签名生成效率可以达到双向EPYC 7742的66%左右。

UnixBench Dhrystone 2和Whetstone测试

该项目主要用于测试Unix系统性能,包括使用寄存器变量测试字符串处理的Dhrystone 2和测试浮点运算速度和效率的双精度Whetstone。此外,单线程或多线程都可以用于这两个测试项目。在这个测试中,我们使用多线程。

第三代AMD EPYC处理器强大的浮点性能在这部分测试中得到了充分展示。比如在双精度磨刀石测试项目中,双路EPYC 7763的测试结果远远优于上一代旗舰双路EPYC 7742,领先幅度高达40%。同时,双向EPYC7713在该测试中领先双向EPYC 7742约3.4%。更可喜的是,双路EPYC 75F3在这部分测试中的性能可以达到双路EPYC 7742的89%。在dhrystone 2使用寄存器变量的测试项目中,第三代AMD EPYC处理器的性能也是亮眼的。比如双路EPYC 7742相比,双路EPYC 7763和双路EPYC 7713的测试成绩分别领先对方17%和3%左右,双路EPYC 75F3的性能可以达到双路EPYC 7742的78%左右。

c射线1.1

C- ray是一种常用的光线跟踪基准测试,可以显示多线程工作负载下处理器的差异。时间越短,系统性能越强。在本次测试中,我们使用了4K和8K分辨率进行测试,从而比较参考系统在不同负载下的性能差异。

得益于较高的核心频率,双通道EPYC 75F3在C射线中的表现相当亮眼。虽然内核和线程数量只有双通道EPYC 7763的一半,但由于内核频率更高,双通道EPYC 75F3在4K分辨率下完成测试任务的时间只比双通道EPYC 7763多1秒左右,即使在8K分辨率下,双通道EPYC 75F3完成测试任务的时间也只有6秒左右。

Sysbench CPU测试

Sysbench是一个广泛使用的Linux基准测试,可以测试CPU的性能。在测试中,主要是通过CPU进行素数相加。这个测试中使用的素数的极限是10,000。

我们的测试结果显示,双通道EPYC7763每秒可以完成487771发,而双通道EPYC 7713的性能约为双通道EPYC7763的92%。值得称道的是,双通道的EPYC 75F3每秒还能完成304232轮运算,性能约为双通道的EPYC 7763的62%。虽然EPYC 75F3的核心和线程数量只有EPYC 7763的一半,但我们认为更高的基频是前者的“加号”。

目标:继续加强在服务器领域的市场份额。

纵观测试结果,不难看出Zen 3架构大大提升了第三代AMD EPYC处理器的综合性能。例如,在保持相同核数和线程数的情况下,双路EPYC 7763的浮点运算性能比双路EPYC 7742有了突飞猛进的提升。即使核心和线程的数量只有双向EPYC 7742的一半,但双向EPYC 75F3的浮点性能是相当的。

得益于更大的执行窗口以及专用分支预测和地址选择器的加持,第三代AMD EPYC处理器在整数运算方面的性能也有所增强,这在本次测试中得到了充分体现。此外,第三代AMDEPYC处理器提高了L3缓存应用和内存配置的灵活性,并大大增强了安全性。不仅如此,第三代AMD EPYC处理器还针对不同客户、不同场景推出了包括“F”系列产品在内的多条产品线,共计19款产品。整个产品布局很完美。

与此同时,AMD仍然专注于建立其EPYC处理器生态系统。AMD还宣布,预计到2021年底,AMD EPYC处理器将与包括亚马逊、思科、联想和腾讯云在内的众多合作伙伴携手合作,为其生态系统带来超过400个云实例和超过100个新的OEM平台。因此,我们相信第三代AMD EPYC处理器将帮助企业用户从容应对各种复杂的IT挑战,成为AMD在数据中心获得更多市场份额的新一代战略产品。

本文来自网络,不代表管理窝立场。转载请注明出处: https://www.guanliwo.com/a/zx/61602.html
上一篇十一代酷睿处理器评测
下一篇 小巧灵活是成语吗
管理窝

作者: 管理窝

这里可以再内容模板定义一些文字和说明,也可以调用对应作者的简介!或者做一些网站的描述之类的文字或者HTML!

为您推荐

评论列表()

    联系我们

    联系我们

    0898-88888888

    在线咨询: QQ交谈

    邮箱: email@wangzhan.com

    工作时间:周一至周五,9:00-17:30,节假日休息

    关注微信
    微信扫一扫关注我们

    微信扫一扫关注我们

    关注微博
    返回顶部