虽然AMD Ryzen 9000系列处理器现在已经正式发布,但是客观来说,它目前还没有真正获得消费者的认可,主要原因是其实际性能明显低于AMD的官方宣传,非常尴尬。
对此AMD官方给出了多种说法,其总体意思是说Ryzen 9000系列处理器的实际性能现在因为多种原因,尚未完全释放、发挥出来,承诺将逐步推出多项举措进行改善,截至目前部分措施已经出炉。
比如,联合微软在Windows更新中推送了KB5041587补丁(请参阅图二),发布AGESA 1.2.0.1固件更新(请参阅图三)等等,本文的讨论主题是后者。
目前,AMD已经正式发布了AGESA 1.2.0.1固件更新(相当于是主板BIOS的底包),并且已经提供给了广大主板合作厂商,主板厂商也已经分别发布了包含AGESA 1.2.0.1的新版BIOS更新,请注意:最新版本是AGESA 1.2.0.2。
——那么,AGESA 1.2.0.2固件更新到底做了哪些改进?为什么能提升Ryzen 9000系列处理器的性能呢?
看到这里,可能有一部分朋友会说,AGESA 1.2.0.1固件增加了105W功耗模式(请参阅下图),解除了一些功耗方面的限制,可以提升Ryzen 9000系列处理器的多核性能,所以可以提高处理器的整体性能。
这个回答是正确的,但并不全面,只是一部分,AMD在AGESA 1.2.0.2固件更新中还做了另外一项重要改进,那就是大幅降低了跨CCD延迟。
要理解这项改进,首先就要理解什么是处理器的“CCD”和“跨CCD延迟”?对于大多数普通数码爱好者朋友来说,这些概念稍微有点复杂,理解有一定难度,下面小编简要地介绍一下。
“CCD”的概念仅适用于AMD的处理器,一般来说,在讨论“CCD”时通常都会同时提到另外一个概念“CCX”,它们总是成对出现的,读者必须正确理解它们是什么和彼此之间的关系。
“CCX”是AMD Zen架构处理器的最基本组成单元,每个CCX通常包含多个处理器内核(型号不同,数量不同),每个核心都有独立的L1与L2缓存,CCX内部的核心是可以被单独关闭、禁用的,而CCD相当于是CCX的复合体。
AMD的入门级和中端处理器通常只有一个CCD,高端型号会有两个CCD(请参阅上图)。举例来说,在Zen 3架构处理器中,每个CCD包含一个CCX,而每个CCX包含最多8个内核。Ryzen 5 5600X拥有一个CCD,其中两个内核被禁用屏蔽,剩下6个内核,共享32MB L3级缓存。
请注意这只是纯理论上的,实际上某些批次的Ryzen 5 5600X实际上有两个CCD,但是,被屏蔽、禁用了一个(请参阅下图)。有部分朋友可能会非常好奇:明明有两个CCD,为什么要禁用一个呢?答案很简单,其中一个CCD可能存在重大瑕疵,无法正常使用。
从理论上讲,处理器的CCD数量越多性能越强,但是CCD数量越多也会随之产生一些问题。看到这里,有些朋友可能会认为小编下面要提功耗,CCD数量越多,功耗也就越高。其实,这只是一方面,另外更重要的问题是跨CCD通信延迟,如果解决不到位,这个值会很高,影响性能。
在多CCD协同工作时,它们之间会共享很多数据,彼此之间需要进行频繁、密切地通信,很显然,所花费的时间越短性能越高,这个概念被称为“跨CCD延迟”。
如果处理器采用单CCD设计,或者在单个CCD内部,其内部内核之间的延时可能在20至30纳秒左右,而跨CCD的延迟可能达到70至80纳秒,这是目前的主流、正常水平。
在Ryzen 9000系列处理器中,高端型号Ryzen 9 9900X 和 Ryzen 9 9950X也是采用双CCD设计。但是在上市之初,这两款处理器的跨CCD延迟较高,普遍在180纳秒左右(请参阅上图),这是导致其性能表现不理想的重要原因之一。
在AGESA 1.2.0.2固件中,AMD现在已经修复了这个bug,跨CCD延迟直接降了一半。根据第三方评测,刷入入新版固件之后,跨CCD延迟仅为75纳秒左右(请参阅上图),已基本与Ryzen 9 7950X和Ryzen 9 7900X持平。
注:在以上两张图片中,左上角和右下角代表同CCD内部的延迟统计,左下角和右上角代表跨CCD延迟统计。
从理论上说,跨CCD延迟大幅降低肯定可以提高处理器的性能,但是实际情况还是取决于具体的应用场景。只有在某些高负荷密集型应用中,才会表现出明显的性能提升,可能并不适用于游戏,AMD禁止游戏同时使用两个CCD。
综上所述,AMD声称Ryzen 9000系列处理器的实际性能现在并未完全释放、发挥出来,这一说法是可信的,其推出改进措施也确实是行之有效的,并非是花拳绣腿的噱头,完善的确需要一些时间。