楠木轩

从三红机到RDNA 2!AMD终出杀招,屠龙就在眼前?

由 东方崇学 发布于 科技

在今天凌晨,AMD终于发布了自己新一代显卡RX 6000系列,和我们之前预想的一样,这次AMD发布了三款产品,分别是旗舰级的RX 6900XT,以及高端的RX 6800XT以及RX 6800。这也是AMD数年来第一次和竞争对手NVIDIA针锋相对地推出显卡产品,三款产品分别对应NVIDIA的RTX 3090、RTX 3080以及RTX 3070(或者说RTX 2080Ti)。

本来在发布之前,并没有多少人看好AMD能在高端显卡的性能上有所建树。大多数人想的RX 6900XT能在性能上和RTX 3080近似,就已经达到预期,吃瓜群众们主要还是希望AMD能以一个更合适的价格来和NVIDIA错位竞争。

但在发布之前,已经有多家媒体爆料,在AMD即将发布的三款产品中,RX 6800XT的性能已经能够持平甚至超过RTX 3080了;而RX 6900XT甚至能够和RTX 3090抗衡。而在显卡的发布会上,AMD也证实了这一点,RX 6000系列显卡的性能让人震惊。这是AMD多年来第一次能和竞争对手在显卡产品上进行正面对决且纸面实力不落下风。

关于具体的显卡型号和规格我们就不多介绍了,相信有兴趣的朋友已经从各个渠道了解到发布会的详情。但是我们要说的是,这次AMD显卡的性能超出了所有人的想象,其中抛开RDNA 2自身在计算单元上效率的提升以及各种特性,最大的功臣当属Infinity Cache这项技术。这个看似只是普通缓存的设计,使得AMD的显卡发生了翻天覆地的变化。而我们这次要讨论的就是这个技术。

超大缓存并非火星科技,AMD十五年前暗留伏笔

从AMD的介绍来看,这次RX 6000每款显卡都有128MB的Infinity Cache,我们可以将它视作在图形核心上中设计的超大缓存。按照AMD的说法,采用这个技术的好处包括存取光线追踪数据、减少对显存的频繁调用、在256bit位宽下做到比384bit更大的吞吐带宽等。

如果是一个老玩家,可能会对AMD这个技术感觉有点眼熟。没错,实际上早在十五年前,AMD和微软已经在游戏主机Xbox 360上使用了类似的一些设计,当时名为eDRAM。而这次AMD在RX 6000显卡上的Infinity Cache技术,更像是对eDRAM深入发展的产物。

在2005年,微软发布了自己的第二代游戏主机Xbox 360,这款主机的CPU采用了IBM的Power PC三核设计,而GPU则由ATi操刀设计,基于Radeon R500图形核心而来,彼时的ATi即将在半年后被AMD所收购。Xbox 360能在3D性能上超过PS3,其中很大一个原因就是在自己GPU中内嵌了eDRAM,从现在来看和RX 6000显卡的Infinity Cache有异曲同工之妙。

现在来看eDRAM,其实并不算什么,但在当时的确是图形核心设计的一个突破。它由1.05亿个晶体管组成,频率和GPU同步,都为500MHz,容量只有10MB。它实际上就是一个动态随机存储器,可以动态存取内存,由于eDARM是设计在GPU之内,所以它的带宽极高,访问速度极快,甚至高于了GPU本身和外部接口之间的连接速度。

从功能上来看,eDRAM可以处理彩色、阿尔法混合(Alpha Blending)、Z轴/模板缓存(Zbuffer)、抗锯齿(Anti-alias)等数据,然后快速将其反馈给GPU,考虑到游戏主机上显存和内存是一体化设计。那么eDRAM的存在,很大程度上弥补了游戏主机显存偏小,显存调用过于频繁的问题。

别看eDRAM只有10MB的容量,但是如果以缓存来考量的话,哪怕放在现在也已经属于超前的设计。大多数GPU的缓存数量实际上不过几百KB,因为缓存的成本实在太高,微软当年为了在Xbox 360上增加eDRAM这个设计,多花了上亿美金。而且单独增加如此大的缓存,对功耗、发热而言都有着一定的负面影响,微软Xbox 360初期不断因为过热出现故障,被广大用户调侃为三红机,eDRAM多少也要背一点锅。

但是这样的设计好处是显而易见的,大量的数据不需要显存反复调用,而是在缓存中直接处理,这大大降低了GPU和显存的负担,Xbox 360能在性能上力压PS3,eDRAM功不可没。而在十五年后,当NVIDIA在显卡性能上一直死死压着AMD的时候,AMD或许终于想起了一个在显卡性能上弯道超车的方案,尽管这个方案实际上是十五年前就用过的。

Infinity Cache,给了我们更多想象的空间

说回AMD的Infinity Cache这个技术。有一点我们其实基本可以确认,RX 6000系列显卡目前三款产品都采用的256bit显存位宽,但是AMD说在Infinity Cache技术加持下,256bit的显存能达到比384bit显存更大的吞吐带宽,实际上是有点文字游戏。

实际上我们分析,AMD所说的意思是,现有256bit显存加上128MB独立缓存的带宽,再加上GPU本身的256KB缓存,它的性能能达到甚至超越原有同频率384bit显存的水准。当然正常情况下,我们是不会将256bit显存和384bit显存划等号的。

而要达到这个性能的前提其实游戏能直接调用到这128MB的独立缓存。所幸AMD也宣布,Infinity Cache缓存设计不需要游戏开发者特别优化才能支持和发挥强力,任何游戏都可以直接获益。但是我们估计不是每款游戏都能在不优化的前提下,可以支持调动全部128MB的缓存,这样它的性能应该和目前AMD所设想的理想性能有一定差距,还是需要游戏厂商进一步深度优化才行。

我们目前不确定Infinity Cache这128MB独立缓存的频率,理论上应该和GPU频率相同。对于Infinity Cache而言,它所在的工作实际上和当年Xbox 360的eDRAM有近似的地方,只是处理的数据进一步强化。从AMD的发布会来看,Infinity Cache目前处理的数据主要是光线追踪,同时兼顾其他游戏数据的存取,这样一来,凭借内部的高带宽,AMD的RX 6000显卡在处理器游戏数据时速度会大大加快,显存调用的频率也会降低,毕竟很多数据已经在缓存中解决了,最终体现到游戏上的表现就是帧速更高同时游戏的读取速度也会更快。

不过,现在Infinity Cache这个技术显然还不是最优化。因为从之前的测试成绩来看,尽管RX 6800XT在大多数游戏和测试程序中,都不弱于RTX 3080,甚至3DMark得分还超过了不少。但是RTX 3080在光追的性能上,依然要强于RX 6800XT。考虑到Infinity Cache很大的一个功能就是处理器光线追踪数据,那么要不是AMD的光线追踪本身性能不如NVIDIA,要么就是Infinity Cache还没有达到最佳的效果,这可能需要游戏厂商和AMD进一步挖掘RX 6000系列显卡的潜能。

但不管如何,Infinity Cache这个技术出现在RX 6000系列显卡上,还是多少让我们有一些意外。就像我们说的一样,在GPU内部重新设计独立缓存,有两个问题,一个是成本较高,二个是在功耗和设计上会比较麻烦。不过很显然,在显卡历经了几代7nm工艺制程后,AMD的确在设计上更为成熟,我们很难想象如果不是更成熟的7nm制程,Infinity Cache这个技术会出现在RX 6000系列显卡上。

缓存并非全能,AMD要做的还有很多

在7nm工艺制程以及激进的设计方案下,AMD的Infinity Cache的确给自己显卡带来了很大的助力。但对于GPU而言,Infinity Cache这种方案虽然效果显著,但更重要的还是RDNA 2架构在其他方面的改进,包括显卡的计算单元、核心频率等等。实际上我们也看到,即使采用7nm制程,即使核心频率最高已经超过2.2GHz,再加上Infinity Cache这样的技术,RX 6800XT也只能说打平RTX 3080,考虑到RTX 3080采用的是三星的8nm制程,只能说NVIDIA在图形核心的设计上,应该依然在占据着上风。

当然对于用户而言,关心的其实无外乎性能、价格以及使用体验等方面。考虑到RX 6800XT的价格,它的确算是比RTX 3080更有性价比的旗舰显卡,毕竟便宜了400元。现在我们更需要看看这款显卡在功耗和以及发热部分的表现,毕竟上一代7nm的RX 5700XT在发热方面不算臭名昭著,也是让人头疼不已。而这次加上了独立缓存,我们对RX 6000系列显卡的发热也会一定的担心,不过这次AMD公版采用了三风扇设计,应该是吸取了上一代的教训。

值得注意的是,类似独立缓存、eDRAM这样的设计,并不是AMD独有,Intel处理器很早就采用过eDRAM的设计,AMD自己的处理器这几年在缓存部分也在逐渐加强。Infinity Cache更像是显卡核心发展到7nm自然而然诞生的一种加强设计。未来其他厂商,包括NVIDIA其实同样可以使用类似的设计,所以AMD自己也要在显卡核心架构上继续强化才能保证自己的性能不落下风,而不是仅仅依靠独立缓存。

有趣的是,这次AMD显然想利用自己在处理器上的优势为显卡助力。除了Infinity Cache之外,AMD还有一项智能存取技术,允许CPU直接访问显卡全部容量的显存,这样不但可以减少显存的碎片化,也可以进一步发挥处理器在游戏中的作用。这点应该是目前AMD独有的优势,毕竟Intel独立显卡业务还处于萌芽状态,NVIDIA则没有配套的技术让CPU给予显卡支持。

写在最后

不管如何,这次AMD的确给我们带来了一个很大的惊喜。至少我们可以认为,在未来Ryzen 5000系列处理器热卖的同时,也能极大提升帮助RX 6000系列显卡在市场上的表现。AMD前几年在显卡和处理器两个市场上都表现平平,这很难达到1+1>2的效果,而在处理器终于崛起之际,AMD终于可以将精力放在显卡上,和NVIDIA再次扳一扳手腕了。

其实我们一直认为在更靠近游戏领域的显卡上,AMD并不缺乏技术和经验。毕竟多年为游戏主机设计芯片,和微软一直又有着紧密的合作,AMD早已累积了足够的资源。而从RX 6000的设计理念来看,这更像是微软DX12的一种延伸,让不同硬件的交互更加紧密,同时让游戏厂商可以更深入接触到硬件底层,从而进一步发挥出显卡的游戏效能。

AMD战未来,在过去曾是一个梗,不过从RX 6000系列显卡的设计来看,我们对AMD显卡在未来的表现依然可以充满期待。如果游戏厂商能在Infinity Cache上进行深度挖掘,加上Ryzen 5000处理器的支持,RX 6000很可能在以后的游戏中,有着比现在更好的性能。如果说还有什么需要强化的,那就要看AMD自家的FiedlityFX,能否在效能和游戏支持力度上超越NVIDIA的DLSS了!