AMD Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

时间:2024-08-09 07:00:30分类:CPU浏览:11

在参加AMD Zen5技术日活动时,我们与大家分享了Zen5的架构设计特点。不过与以往不同的是,当时发布的信息并不多,也没有涉及到架构的底层细节,缺乏与Zen4的全面对比。

最近AMD更新了Zen5架构技术文档,终于放出了很多我们想要的细节,包括各个微架构模块的具体变化,包括桌面端、移动端的异同,包括Zen5、Zen5c的新理念,包括同样升级的RDNA 3.5 GPU、XDNA 2 NPU。AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

任何工作都必须有目标,CPU架构设计当然也是如此。

Zen5的目标就很简单,核心就是继续大幅提升单核、双核性能,为未来奠定新的基础,同时实现满血版AVX-512,支持可配置的256/512位浮点数据路径,有助于大大提升AI能力。令人失望的是Intel 12代酷睿开始采用异构混合架构,其中E核不支持AVX-512,导致整体不得不放弃。

Zen5还有一个重要使命就是进一步普及紧凑版核心,也就是Zen5c,包括移动端和服务器端。其实上一代有Zen4和Zen4c,它们在数据中心方面非常成功。然而在移动端,他们只是以一种非常低调的方式尽力了。这一次,它们将被广泛使用。

不过AMD明确表示,Zen5c这种设计在桌面端不会使用,原因稍后再讨论。

此外,更大的灵活性、更高的能效、4/3nm工艺支持、ISA指令集增强也是Zen5的主要任务。

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

Zen5微架构总览,从前端到后端,从整数到浮点,从缓存到带宽,都进行了全面升级,后边会一一讲述。缓存部分是大家经常看到的,也比较容易理解。

Zen5的一级指令缓存容量仍为32KB,8路关联,每个时钟周期有两组32B拾取;

一级数据缓存容量增至48KB,12路关联,每个时钟周期4次内存操作。

还有一个特殊的操作缓存(Op-Cache),支持6条指令,每个时钟周期支持两组6宽度的取指。

二级缓存容量依然为1MB,16路关联。

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

分支预测与拾取部分做了极大的优化提升,比如支持“零泡沫”(zero-bubble)条件分支,这意味着分支预测器在访问BTB(分支目标缓冲区)时不支付任何费用。

L1 和L2 BTB 还增加了容量(1.5K/7K 至16K/8K)和精度,并增加了TAGE,这对于条件间接分支至关重要。

此外,每个时钟周期读取和解码的指令数量从32B增加了一倍到64B,返回寻址堆栈从32变为52、每时钟周期支持最多3个预测窗口,指令缓存的延迟和带宽也得到了改善。

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

新的指令解码系统,配备了双解码流水线,可以独立并行处理指令流,每条每时钟周期4条指令。关联操作缓存(OpCache)通道数增加1/3,达到16通道,最多可存储6条指令。对于双流水线,每个时钟周期有12 条指令。

当启用SMT多线程时,每个线程都是一个管道。

还有一个非常重要的事情是,通往整数和浮点单元的分派队列宽度从6个增至8个宏操作(macro-op),并支持操作融合,可以让来自某些指令的两个宏操作作为一个来处理。AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

整数单元是Zen 架构的强项,现在更加“扩展”,调度、重命名和退休达到了8 个宽度。

ALU整数逻辑单元从4个增至6个,包括3个乘法单元和3个分支单元,ALU调度器也从24个大幅增至88个。AGU地址生成单元从3个增至4个,每个时钟周期可以执行4个内存地址,AGU调度器从48个独立、24个与ALU共享变为56个独立。

可以说,整数单元的大大强化,是锐龙9000系列在加速频率微增或不动、基准频率降低情况下取得性能大幅提升的关键所在。AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

矢量和浮点功能也得到了显着增强,特别是AVX-512指令集终于可以支持完整的512位数据路径,同时保留256位,非常灵活,可以兼顾高性能、高效率,也不至于让功耗失控。。整个浮点执行单元的带宽和延迟都得到了升级,包括4条浮点执行流水线(Zen4 3条)、338个浮点调度器(Zen4 232个)、2条加载存储和整数寄存器管道、每个时钟周期2 512位加载和1 512位存储、双循环FADD等。

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

主二级缓存的数据带宽得到了全面扩展,特别是一级数据缓存来到了12路48KB,4条载入/存储流水线每时钟周期可以执行4个载入(Zen4还是3个)和2个存储,四个整数加载管道可以合并为两个。

此外,还全面涵盖了TLB、实时窗口、数据预取等。

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

添加的新指令并不多,AVX-512仍是重点,包括扩展为VEX编码的VNNI/VEX,以及将向量配对成一对掩码寄存器的VP2INTERSECT[DQ]。

另一个是PMC虚拟化,可以为客户端提供更好的安全性,还有异构拓扑,这显然是为Zen5和Zen5c的结合做准备的。

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

Zen5和Zen4技术规格的对比,也是对上面所说的一个总结。

注意所有列出的参数都变了,从前端到执行单元到缓存,因此可以说Zen5是一次全面性的架构翻新,即所谓的“大改”,这才有了频率下来了但性能上去了的神奇结果。AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

Zen5、Zen5c二者架构设计、IPC性能、ISA指令集都是完全相同的,也都支持多线程,对于操作系统和应用软件而言是透明和等价的,基本上不需要特别考虑调度问题,这和Intel的异构大小核天然不同。Zen5追求的是尽可能高的单核频率和单核性能,以及足够大的三级缓存。

Zen5c降低了频率,提高了能效,并精简了部分3级缓存。

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

Zen5 CCX模块的核心和缓存架构图。

一级指令缓存基本保持不变,容量为32KB,8路关联。

一级数据缓存容量增大一半来到48KB,12路关联也增多了一半,并且带宽翻番,每个时钟周期支持CPU 内核4 次加载和2 次存储。

二级缓存容量还是每核心1MB,但是关联路数翻了一番达到16路,带宽也翻了一番,与一级缓存之间是每时钟周期翻番到64B,与三级缓存之间是每时钟周期32B,双向都是如此。3 级缓存每个CCX 16MB,16 路关联,但降低了延迟,提高了命中率。AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

Zen5架构在桌面台式机、移动笔记本、服务器数据中心三大领域采取了不同的产品设计和试实现方式,都非常有针对性。在桌面上,它具有经典的chiplet设计,一两个CCD(相当于CCX),再加上一个完全延续了上一代设计的IOD。架构是纯Zen5,不会使用Zen5c。

在笔记本电脑上,继续使用单芯片,并将双CCX 组合成一个CCD。都是Zen5和Zen5c的组合,最多分别为4个和8个。

在服务器上(包括嵌入式),设计更加灵活。有些CCX 较大,有些较小。 Zen5和Zen5c会有,但应该像Zen4和Zen4c一样开发自己的产品线,不会混合。

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

代号Granite Ridge 的Ryzen 9000 系列桌面版的芯片和核心布局。

和之前基本一致,每一组CCX/CCD里有8个核心、8MB二级缓存、32MB三级缓存,但注意两种CCX/CCD是不互通的,所以哪怕12/16核心型号有64MB三级缓存,但每个核心最多也只能访问自己所在CCX/CCD里的32MB。当然,理论上可以通过IF总线访问,但是带宽太低,延迟太高,没有用。

IOD部分与Ryzen 7000系列相同,因此也拥有2个RDNA2架构GPU CPU单元、128位双通道DDR5-5600内存控制器、28条PCIe 5.0总线、5个USB接口、四组显示输出。

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

代号为Strix Point的Ryzen AI 300系列移动版的芯片和核心布局。

变化还是蛮大的。上一代Zen4和Zen4c组合只是两款低端机型的低调尝试。这次成为了标准的Zen5和Zen5c组合。

注意看左上角,分了两个黄色框图,4个Zen5核心和对应的16MB三级缓存是一组,8个Zen5c核心和对应的8MB是另一组,也就是和桌面上类似甚至更极端,Zen5、Zen5c三级缓存各用各的,没法互通,24MB也只是个总容量。GPU部分为RDNA3.5架构,拥有8组WGP,意味着16个CU和1024个流处理器。 NPU部分为48阵列XDNA 2架构。这两个大家都很熟悉了。

IO部分支持128位LPDDR5X-7500/DDR5-5600内存,16个PCIe 4.0,8个USB接口,其中2个USB4.0。

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

RDNA 3.5架构GPU在纹理子系统、着色器子系统、光栅子系统、显存/显存子系统等各个方面都进行了优化和增强,采样率等部分指标性能提升了一倍,可以更好的匹配配备LPDDR5X 内存。压缩比也更高。

当然,规模也有所增加,从12个CU增加到16个CU,4个渲染后端(RB+),最高频率提高到2.9GHz,理论性能提升了大约30。但由于驱动尚未到位,游戏性能尚未释放。出来。

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

XDNA2架构NPU AI引擎,号称第一个为“Win24”做好准备的x86处理器NPU,但是能够使用NPU的应用还是太少,无论AMD还是Intel。

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!

总的来说,Zen5作为一次大规模的架构升级,从目前的表现来看是相当成功的。无论是笔记本上的Ryzen AI 300系列,还是台式机上的Ryzen 9000系列,性能和能效都得到了大幅提升。值得注意的是,服务器上的第五代EPYC也值得期待。

英特尔即将推出其竞争对手Arrow Lake。错过一代,终于回归高性能之战,又一场好戏开始了!

AMD  Zen5架构深入解读:频率降低、性能却飞升的秘密找到了!