英特尔十三代酷睿处理器猛禽湖RPL

您所在的位置:网站首页 raptor怎么运行 英特尔十三代酷睿处理器猛禽湖RPL

英特尔十三代酷睿处理器猛禽湖RPL

2023-03-15 06:43| 来源: 网络整理| 查看: 265

小孩子不懂计算机,写着玩的

大家笑一笑就好

背景历史

近年,自AMD的ZEN3处理器发布以来,Intel包括桌面、服务器以及移动端在内的主要产品线都受到了来自AMD竞品的强力威胁,作为老牌大型垂直芯片企业霸主的它在距离奔腾四时代的约20年后,地位再一次受到了挑战,这可以说是Intel的内忧。而与之相对的外患,则是现今Apple也正在迈向逐步使用基于ARM架构的Apple Silicon代替了Intel处理器的进程上。RISC阵营的崛起预示着以x86这种CISC阵营的地位已经来到了危险的边缘。落后于竞争对手的制程工艺、凌乱的PAO产品策略前后夹击,就在这危险之时,Intel的传奇,来自以色列的海法团队在去年为Intel搬出了Alder Lake架构下的十二代酷睿这一终极救兵,打了一个漂亮的翻身仗。而今年,他们在Alder Lake的基础上,基于PAO(制程Process-架构Architecture-优化Optimization)模型,为我们带来了最新的Raptor Lake。

大杯的猛禽

13代酷睿沿用了12代开创而来的P-Core+E-core,组成的混合架构。制程则是升级成了采用了第三代SuperFin结构的Intel 7 Ultra。其特点是能够实现更高的Voltage-Frequency包线,比起上代Intel 7能提升接近1Ghz。

13代酷睿的核心代号Raptor Lake,P-Core架构为Raptor Cove,E-Core架构则是refined Gracemont Cove。Raptor Cove的13900K,全核可达5.5Ghz,单核可达5.8Ghz,L2 cache由1.25MiB提升到了2MiB,共享L3 cache从30MiB提升到36MiB。另外,在L2 cache中额外引入了L2P预缓存技术,能根据工作负载动态调整预取器的行为。L3 cache中则是加入入了Dynamic INI动态包含/非包含算法,DINI会尝试根据运行的内存行为在L3包含/非包含策略之间实时切换。在refined Gracemont上,L2 cache翻了个倍达到了4MiB,最高频率从3.7Ghz来到了4.3GHz,并在最高规格sku的核心规模上达成了翻翻。不过,在gcc 12.2编译器中13代酷睿的旗表却任何12代一样为Alder Lake,可能是暗示着两者在体系结构上的近似度。

使用lstopo呈现的13900K层次关系如下:

与12900K一样,整体结构仍是在传统的酷睿处理器环形总线结构上额外挂载了4个类Atom内核簇,每个内核簇共享L2 cache,之后并入ring bus中与P-core share L3 cache,依靠线程导向器将各种线程按照负荷交给不同类型的内核。

同时,由于集成了多达24个内核和各类高带宽部件,Raptor Lake内部也启用了双环路互联总线来提供高速的内联交流带宽。

Raptor Lake依然使用 8 条信道的DMI 4.0总线与南桥芯片组 PCH 连接,可以使用上一代Alder Lake配套的Z690芯片组,但是我还是建议选择Intel为Raptor Lake配套的 Z790芯片组,Z790的PCIE 4.0通道数是 20 条(Z690 只有 12 条),当然PCIE 3.0通道数则从16条缩减到了8条,此外Z790也不再支持Octane 内存。

微架构Refined Gracemont

因为经过调整的Gracemont Cove并未在结构上与Alder Lake中的Gracemont Cove做出重大区分,所以我们直接将其看作是Gracemont Cove的工艺加强版也未尝不可。Gracemont Cove起源于英特尔的低耗电x86架构,发展至今已经历4代。Raptor Lake配备的Gracemont Cove则在Alder Lake采用的Gracemont Cove上更新了新的工艺。

Gracemont引入了名为 OD-ILD的按需“指令长度”预解码器设计可以在L1指令缓存里存放了指令长度数据。便于x86这种CISC指令集计算机在指令第二次拾取时绕过预解码阶段,直达指令解码器前的指令队列上,这样的设计可以节省部分周期和耗电。同时,Gracemont采用了双解码器簇的设计,每个解码器簇各有三个解码器。虽然看上去一共有六路解码,但是两个解码器簇合计只能向下游输出5个微操作,和RISC的设计思路非常类似。与之相比,Gracemont的直系上代微架构Tremont也具备一样的双3路解码器,但是只能做到输出4个微操作。根据Intel的解释,这种双解码器簇的设计对于Atom这种低耗电处理器来说比使用基于高速缓存的方案更好,在不损失解码能力的情况下可以有效降低die的面积。后端上,Gracemont的重排序缓存可以容纳256条目,可以同时向执行端口发送5个指令,相比之下上一代的 Tremont指令窗口是208条目,可以同时向执行端口发送4个指令。在执行单元端口数方面,Gracemont和Tremont分别是12个整数+ 5个浮点和7个整数+3个浮点,指令并行能力有所提升。

微架构Raptor Cove

Raptor Cove的L1指令高速缓存比起上一代相比未有变化,都是32KiB,但是增加了用于缓冲的指令页表缓存队列,长度256.

分支预测器中增加了L1和L2高速缓存用的目标分支缓存条目队列,可以在管道pipeline的较早阶段重定向取回并可以加速间接分支。分别增加到128条和12288条,相比之下,Zen3只有6.5K条目。同时新增了ITA和返回栈便于单周期指令调度。

微操作缓存大小保持不变,处于时钟门控控制下的解码器可以动态降低多并行指令解码器带来的耗电和时延问题。

新增每周期8个操作的指令引退单元,从512条目的ROB重排序缓存分出280长的整数物理寄存器和332长的向量寄存器链接到其上。

指令拾取带宽保持每周期32字节不变,与ZEN3一致

微高速操作缓存保持每周期8个操作,超过上上代Willow Cove

解码器和微高速操作缓存下游的uop-DQ宽度保持不变,144个长的队列用于存放单线程操作应用,SMT应用的则为72个,调度器具有6个分配端口和12个执行端口。

后端执行单元上Alder Lake的两个快速加法单元仍旧存在,整数流水线上的Port 10使得Raptor Cove有5个ALU用于实现单周期LEA指令的执行。

内存上Load端口准许每周期执行3个256位的Load操作或2个512位的Load操作和2个Store操作,超越ZEN3每周期3个Load操作和2个Load操作。

Load/Store队列为128和72不变。L1数据缓存前新增96队列长的L1数据后备缓冲区,以每周期64字节的方式链接16通道的L2高速缓存,比起上代增加了0.75MB的容量并多了6根读写通道。同样,L2也增加了2048队列长的后备缓冲区来进一步增加指令序列容量缓解分支预测带来的性能下降。

指令延迟

相较于12900K来说由于Ringbus结构与设计的变动,当E-Core有负载的时候,Ringbus frequency不会再由4700 Mhz掉至3600 Mhz这样的大幅度变化,其变化主要由5000 Mhz变化至4600 MHz,此时Ringbus的延迟将不再成为核心访问延迟的负累,再加上Ringbus拓扑结构的可能变动致使13900K的P与E之间的通讯不再存在一个明显的访问惩罚,几乎所有核心间的通讯速度都维持到了一致的水平,大约在30-33 ns之间,除了同Cluster内的小核心仍旧因为没有总线探听器的缘故具有一定的访问延迟惩罚,而同Cluster内的E核心延迟也有少许的改进。

考虑到C2C延迟的测量需要锁定缓存行的前缀指令,参考SDM 3A 8.1.4,如果修改的内存在cache里且为WB,可能不再发出总线锁,而是推测性地修改,再通过MESI去广播修改,发生竞争时就靠ringbus或者mesh去仲裁了。也就是说缓存锁不需要再显式广播锁/解锁信息。同时由于是依次cmpxchg,只有当另一个核心的修改被更新到L1,cmpxchg才会成功修改数据。所以超线程之间延迟低,主要是因为不需要搬运数据,甚至根本没有MESI的更新。

以上就是这次13代酷睿的架构内容,接下来开始性能测试环节。

性能测试

CPU:Intel i9 13900K、Intel i7 12700、AMD Ryzen 9 5900X

主板:

LGA1700:ASUS TUF GAMING B660M-PLUS WIFI D4

AM4:ASUS ROG STRIX B550-XE GAMING WIFI

内存:英睿达镁光DDR4-3200 16GB*2

电源:长城G7 750W

操作系统:Ubuntu 22.04 Linux Kernel 6.0、Windows 11 专业版

编译器:GCC12.2 默认-o0关闭编译器优化

Raptor Cove和Golden Cove表现相近,说明底层架构差异不大

定频4.0GHz时对处理器的内存带宽数据除以固定处理器频率可以得到处理器每周期访存的带宽,可以用来判别微架构Load/Store单元规模和总线设计的强弱

Raptor Cove的读取总线带宽略低于Golden Cove,大约是每周期74字节,而Golden Cove 可以达到每周期89字节,都比Zen3的每周期62字节高。Gracemont的测试结果除了Cache 大小差别外几乎是一样的。

处理器的五段流水线流水线一般分为取指、译码、执行、访存、写回五个阶段,其中前端一般指取指和译码,后端则是执行和写回。

对于超标量处理器设计而言,每周期可以执行复数条指令,前端需要为后端匹配相应的取指译码能力才能保证流水线单元没有空闲。同时,分支预测单元也被加入其中用以决定是否需要将指令优先派发给闲置后端单元执行。处理器中存在被称为op cache的缓存,用以存放被处理器认为近期可能会被重复使用到的微操作指令,由于这里的微操作是已经经过解码器解码的存在,所以其长度是固定的。以循环语句为例,循环体内的指令语句是不断重复的,这些指令就会以微操作的形式存放在op cache里,这样循环调用的时候就可以略过解码器直接通过发射端口发往后端队列。我们这里分别对4字节指令和8字节指令进行测试。

首先是4字节指令

Raptor Cove和上一代一样,都是每周期6 bytes,都可以维持到L1 Cache边界,比起ZEN3要持久一点。Gracemont可以在6.x IPC性能可以维持到8KiB 的水平,并且在128KiB边界处也能维持到接近6IPC的水平,新Gracemont得益于cache的增长,时间上能持久一点。

再是8字节指令

Raptor Cove 的最高取指带宽为每周期53字节,而Golden Cove是每周期50字节,有所提升,看起来对复杂指令解码能力不错,相当于在6.25IPC

增强版的Gracemont在取指带宽方面也比上一代的Gracemont更好,可以达到每周期35字节,而上一代是每周期33字节,2048KiB内几乎能和ZEN3持平。

接下来测试流水线的深度,此项可以反应处理器的分支预测性能

测试方式是REP函数固定10次循环执行MOVZX内存载入后异或XOR操作完毕接SHR指令右移1位后跳转,br=8,N=0

ZEN3为14.72个周期,Raptor Cove为18.84个周期,Golden Cove为18.61个周期,refined Gracemont为17.92个周期,Gracemont为17.01个周期

可见13代处理器的分支预测惩罚更高,在本例中都要提升1周期左右,流水线深度略有增加。这个环节中ZEN3的分支预测惩罚最少

最后来看下单次内存访问延时性能

C程序代码如下:

程序按照4GB大小申请虚拟内存,之后按4KB每页写入值以访存,并按照6400B为步长顺序访问内存,计算得到延时如下

13900K with 3200MHzDDR4成绩分别为:14ns 11ns、12ns 10ns、13ns 11ns、14ns 10ns

5900X with 3200MHzDDR4成绩分别为:11ns 9ns、10ns 9ns、11ns 8ns、11ns 8ns

可见单步长下ZEN3有微弱优势领先。

最后是浮点数除法性能测试,C语言代码如下:

设定-O0关闭编译器优化后得到汇编文件,除法部分表示为:

可见程序调用SSE2双精度浮点数除法命令divsd,将浮点数参数xmm0交换至内存中后再进行除法操作,解决了SSE寄存器不能直接mov赋值立即数的问题。又因浮点数除法先要实现阶码相减再要实现尾数定点减法,涉及整数、浮点转换最多、最长,所以最消耗性能。

样例输出结果如下:

整体测试结果如下

Raptor Cove的用时仅有Golden Cove的23%,Gracemont也有6%左右的提升,可见大核的架构升级还是不小的。

结语

从微架构角度而言,Raptor Lake和上一代 Alder Lake虽然有些差别,但是整体来看,主要的变化不大,主要是E-Core规模增加(但是内部总线带宽并没有随之拓展)、引入了更大的 Cache,在同频下跑常规应用的差别并不大,主要靠频率和 E-Core 带来的吞吐提升。作为Intel 7工艺改进之下的新产品,虽然功耗的上限提高了,但中低功耗区间下的表现也有了稳步的提升。就一款新型PAO模式下的处理器而言,它是出色的。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3