AMD 锐龙9 7950X芯片调研

AMD 锐龙9 7950X芯片调研

基本信息

AMD 7950x芯片是AMD的旗舰台式处理器,基于优化的高性能TSMC5nm工艺构建,拥有多达16核心32线程,采用Zen4架构和SocketAM5接口。AM5提供了双通道DDR5内存等先进的连接功能,同时拥有多达24条PCIe®5.0通道,以此成为AMD迄今为止最具扩展性的台式机平台。7950X拥有64MB的三级级缓存,16MB的二级缓存,1MB的一级缓存,支持AMD同时多线程(SMT)技术。7950X的基础频率是4.5GHz,最大加速频率是5.7GHz,默认TDP(热设计功耗) 是 170W,最高耐受温度是95°C。7950X并行性能很强,可以在多任务环境下提供高效的运算能力。

Zen4 架构

架构基本信息

AMD Zen4架构是 AMD 的第四代 Zen 系微架构,基于优化的高性能 TSMC 5nm工艺构建,支持 DDR5 内存,AVX-512,BFLOAT16 等指令集,以及 128 条 PCIe5.0通道。相比Zen3架构,Zen4在每时钟周期的指令数(IPC)上又有了两位数的提升。这意味着Zen4架构在并行计算方面有了更强的能力和效率。

同时Zen4采用了大小核设计,每颗芯片集成了 16个核心,其中一半是高性能核心(P-Core),全核最高频率为 5.7GHz;另一半是低功耗核心(E-Core),最高频率5.38GHz。这样的高频核和低频率的同构设计可以简化调度设计。例如Intel十二代处理器就引入了 P-core + E-core 的设计,其中的 E-core是来自低耗电产品线 Atom,性能远低于 P-core。在十二代酷睿发布的时候,只有Windows 11 提供了 Intel Thread Director 支持,在当时其他操作系统例如Linux 上,任务有可能会优先在 E-core上运行,此时给这类用户的体验就非常糟糕。

而 Zen4 则没有这个问题,不管是 Windows 11 还是 Linux,Zen4
都能将任务优先指派给高频内核,这样的高低频内核设计在大部分情况下都是最优解。

Zen4架构并行体系

在并行体系结构方面,Zen4的并行体系结构设计基于芯片组(chiplet)的方式,将多个核心芯片组(CCD)和一个输入/输出芯片组(IOD)封装在一个封装中。这样可以提高灵活性和可扩展性,降低成本和功耗。此外,Zen4架构还有如下特点:

Zen4 的内核采用了SMT4 技术(Simultaneous Multithreading),也就是说每个内核可以同时执行 4 个线程,这比 Zen3 的SMT2 技术提升了一倍。它允许每个内核同时执行 4
个线程,从而提高处理器的利用率和性能。它是 Simultaneous Multithreading
的一种实现方式,也可以称为 SMT4 或者 4-waySMT1。优点是可以在同样的内核数目下,提供更多的并行度和吞吐量,尤其是对于那些有大量分支和内存访问的应用程序。它的缺点是会增加处理器的设计复杂度和功耗,以及可能造成缓存竞争和线程调度不均衡等问题。

Zen4 的前端(Front End)也有了很大的改进,重点改进了分支预测部分,包括每时钟周期预测两个跳转分支,一级分支目标缓冲增大50%达到1.5K条目、二级分支目标缓存扩容从6.5K略增至7K。另外,指令缓存(Op Cache)增大了约68%达到6.75K条目,每时钟周期可以完成多达9个宏指令,从而减少分支错误的概率。它还增加了一个微操作缓存(μOP Cache),用来存储已经解码过的指令,从而减少解码器的压力。

Zen4 的执行单元(Execution Unit)也有了一些变化,最明显的是它支持了AVX-512指令集,这是一种基于SIMD(单指令多数据)的技术,可以在一个时钟周期内对多个数据进行相同的操作。不过,Zen4架构并没有实现真正的512位宽的SIMD,而是在256位宽的SIMD基础上模拟出AVX-512的效果。这样可以节省芯片空间和功耗。为了支持AVX-512,Zen4 增加了两个 256位 的向量单元(VPU),每个 VPU 可以执行两个128 位或一个 256 位的向量操作。Zen4还增加了一个乘法累加器(MAC),用来执行 BFLOAT16 类型的乘法和累加操作。

Zen4 的后端(Back End)也有了一些优化,比如它增加了一个负载/存储队列(LSQ),用来缓存内存访问请求,并且可以在不同队列之间进行重排序和合并。它还增加了一个预取器(Prefetcher),用来预测内存访问模式,并且提前将数据从 L3缓存或者内存中取出放入 L1 缓存或者寄存器中。

Zen4在缓存体系方面也做了优化,尤其是二级缓存,不但容量翻了一番,每核心来到1MB,还提升了速度。同时,从二级缓存到三级缓存、从三级缓存到内存,都支持更多命中失败,可以减少流水线的停顿,增加缓存回填带宽,提升整体效率。
不过整体缓存架构没变,一级缓存依然是32KB+32KB的每核心容量组合,三级缓存则继续每8个核心一组共享32MB,总共两组有64MB三级缓存。

芯片架构对比

同Intel芯片横向对比

拿AMD Zen4对标的Intel酷睿13代处理器(此处以i9 13900K为例)进行对比,二者都是两家公司的最新一代芯片,在各个方面都有各自的特色和优势:

硬件条件对比

并行程序的设计和效率与硬件息息相关,而两款芯片在硬件上有所不同:

AMD
Zen4芯片采用了5nm工艺,而Intel酷睿13代芯片采用了10nm工艺。这意味着AMD Zen4芯片可以在同样的面积内集成更多的晶体管,从而提升性能和效率;

AMD
Zen4芯片普遍拥有达到16个核心(8个高性能P核,8个高效率E核)和32个线程或更高的规格,而Intel酷睿13代芯片拥有24个核心(8个高性能P核,16个高效率E核)和32个线程的规格。

AMD Zen4芯片和i9 13900K最高频率都为5.8Ghz,然而AMD Zen4的基准频率更高,面对并行的任务处理平均会快一些;

AMD
Zen4芯片支持DDR5-5200内存,而Intel酷睿13代芯片支持DDR5-4800内存。这意味着AMD
Zen4芯片可以拥有更高的内存带宽,从而加速数据传输和处理,对于并行任务处理也会有优势;

AMD Zen4芯片支持PCIe 5.0接口,而Intel酷睿13代芯片支持PCIe 4.0接口。这意味着AMD Zen4芯片可以连接更快的设备,例如固态硬盘、显卡等;

AMD Zen4有高达64MB的L3缓存,i9 13900K只有36MB的L3级缓存。而在L2级缓存,i9
13900K每个P核的L2缓存容量由Alder Lake的1.25MB提升到了2MB,相当于增加了60%,P核总共拥有16MB L2缓存,此外英特尔还引入了全新的动态预取器算法L2P技术,即Logical to
Physical,从而实现更高效的预读取方式;而E核每4个构成一个集群共享4MB L2,最终使E核总共拥有16MB L2缓存,搭配P核上的16MB L2,就总共构成了Core i9-13900K的32MB L2缓存,这一点优于AMD Zen4;

两款芯片在并行体系结构上的对比

AMD Zen4采用了多芯片处理器(CCD)的设计,将多个核心组合成一个模块,然后将多个模块连接起来,形成一个强大的并行处理能力。每个CCD最多可以包含8个核心。

Intel酷睿13代采用了混合核心(HCP)的设计,将高性能核心和高效率核心混合在一起,拥有灵活的并行处理能力。每个HCP最多可以包含8个高性能核心和8个高效率核心,而Intel酷睿13代最高可以拥有2个HCP。

AMD Zen4和Intel酷睿13代都支持超线程技术(SMT/Hyper-Threading),即每个物理核心可以同时执行两个逻辑线程,从而提升并行处理能力。

AMD Zen4和Intel酷睿13代都支持矢量扩展指令集(AVX/AVX2/AVX-512),即一种专门用于加速浮点数运算的指令集,在进行科学计算、图像处理、机器学习等领域时具有很强的并行处理能力。

从以上对比可知二者均有很强的并行任务处理能力,都具有极高的时钟频率和大容量缓存,都具备多核心与多线程能力,并且都有最前沿的大小核计数,SMT超线程技术,都支持AVX-512矢量扩展指令集,这些技术使得两款芯片拥有高超的并行任务处理能力;但二者也有一些区别,例如在设计上的区别和工艺上的区别,AMD Zen4的工艺更先进一些,而i9 13900K的设计也非常巧妙。二者都擅长运行并行程序,但是谁更适合取决于程序的类型、规模和需求。
综合可以总结如下:

AMD
Zen4芯片更适合运行那些需要大量核心和线程、高内存带宽和高设备连接速度的并行程序,例如视频渲染、3D建模、科学模拟等。
Intel酷睿13代芯片更适合运行那些需要灵活调整核心和线程、高单核性能和低功耗的并行程序,例如游戏、办公软件、网页浏览等。

Zen系纵向对比

Zen系发展

AMD Zen系是AMD开发的一种x86-64微架构,用于高性能计算市场。它从2016年开始发布,目前已经推出了多代产品,包括Ryzen锐龙、EPYC和Threadripper等品牌。
Zen系的发展可以分为以下几个阶段:

Zen:第一代Zen微架构,采用14nm工艺,相比前代Bulldozer微架构提升了IPC(每时钟周期指令数)和能效,支持SMT(同时多线程)技术;

Zen+:第二代Zen微架构,采用12nm工艺,优化了缓存、内存控制器和功耗管理等方面;

Zen 2:第三代Zen微架构,采用7nm工艺,引入了芯片组合(chiplet)设计和无限制制造技术(Infinity Fabric),增加了核心数量,高速缓存容量翻倍(高达 32MB),浮点吞吐能力翻倍(256位),从而实现了更大的高速缓存以及更强大的多线程能力;

Zen3:第四代Zen微架构,采用7nm工艺,改进了核心布局、分支预测、执行单元等方面,提升了IPC和游戏性能等方面。Zen3架构还采用了统一复合设计,将8个核心和32MB
L3缓存整合为一个资源组,降低了核心到核心和核心到缓存的延迟;

Zen 4:Zen4 的内核(Core)是基于 SMT4 技术的,每个内核可以同时执行 4
个线程,这比 Zen3 的 SMT2
技术提升了一倍,有效提升并行处理能力。此外,Zen4芯片IPC(每时钟周期指令数)提升高达24%,频率提升约10%,单线程和多线程性能都有显著提升。前端部分改进了分支预测、增大了OP指令缓存、增大了指令退役队列等,提高了指令的获取和执行效率。执行引擎部分增大了整数/浮点寄存器文件、加深了核心缓冲吞吐、支持了AVX-512指令等,都进一步提高了计算能力和并行度。载入/存储单元部分也改进了内存访问机制、增大了二级缓存等,降低了访存延迟和带宽限制。

并行体系结构上的变化趋势

从以上Zen系发展历程不难看出,Zen系芯片的并行体系上的发展有这几点:

制程的进步:同样的面积能容纳更多晶体管,计算速度和能力不断增强,不过受工艺限制,这样在硬件上的进展在不断变慢,例如Zen2相比前一代12nm大幅进步到7nm,而Zen4的5nm相比前一代Zen3的7nm进步幅度就没那么大;

SMT(同时多线程)技术的进步:该技术使得Zen系列支持每个物理核心运行两个逻辑线程,提高了核心的利用率和吞吐量,而Zen4则支持SMT4技术,能运行4个线程,并行能力不断提升;

Infinity Fabric技术:Zen系列采用了无限制制造技术(Infinity
Fabric),将多个芯片组合(chiplet)连接起来,实现了高速、低延迟、可扩展的互连方案。这也是Zen系列在并行任务处理上不断进化迭代的技术;

大小核架构:Zen4已经开始尝试大小核架构,类似于Intel和ARM的设计,将高性能核心和高效率核心结合起来,实现更好的性能和能效平衡,能更好的应对一行要灵活调用资源的并行程序;

IPC(每时钟周期指令数)每一代也在更新进步,实现了多核心和单核心性能的平衡;

三级缓存以及二级缓存容量、浮点吞吐能力、OpCache容量不断提升,提高了计算能力和内存访问速度,降低了访存延迟和带宽限制,进一步提升并行处理能力。

AMD Zen4并行编程相关信息

在指令集方面,Zen4支持AVX-512指令集扩展,并且与RDNA3和CDNA2图形架构兼容,可以进行这些指令和架构的并行编程;AMD还提供了针对Zen4微架构优化的C/C++和Fortran编译器(AOCC),可以提高软件性能,并支持多种并行编程模型,如OpenMP、OpenACC、MPI等,并提供了一些性能分析工具;此外,Zen4芯片带有集成GPU,也适合用于并行编程;如果想进行AMD芯片的并行编程,AMD的官网会提供开发者指南、手册和ISA文档,其中包含了针对Zen4微架构的软件优化指南、处理器编程参考以及RDNA3图形架构的介绍。

作者:Xyang03

参考:
Edison Chen. AMD Zen 4
微架构深入测试报告.https://zhuanlan.zhihu.com/p/568419115, 知乎,2022.
快科技. AMD Zen4架构深入揭秘!49%性能提升从何而来?.
https://zhuanlan.zhihu.com/p/572606031,知乎,2022

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值