根据AMD向Tom'sHardware发布的一份声明,关于AMD的RDNA3GPU破坏了着色器预取功能的报道并不准确:“与

前几代硬件一样,RDNA3支持着色器预取功能[gitlab链接(在新标签页中打开)].有问题的代码控制了一项实验性功能,该功能并非旨在包含在这些产品中,也不会在这一代产品中启用。这是一种常见的行业做法,包括实验性功能,以便在未来一代产品中进行探索和调整部署。”——AMD发言人对Tom'sHardware
的采访。3个显卡具有“非工作着色器预取硬件”。猜测的来源@Kepler_L2引用了Mesa3D驱动程序的代码,这些代码似乎表明着色器预取不适用于某些具有A0硅版本的GPU(CHIP_GFZ1100、CHIP_GFX1102和CHIP_GFX110)。
然而,AMD的声明称,Kepler_L2引用的代码属于实验性功能,并非用于最终RDNA3产品,因此暂时禁用。AMD指出,在新芯片中包含实验性功能是一种相当普遍的做法,这是准确的——我们经常看到这种方法用于其他类型的处理器,如CPU。
例如,AMD出货了一整代Ryzen3000产品,其TSV需要启用3DV-Cache,但直到Ryzen5000时代末期才使用该功能。同样,英特尔经常添加可能不会在最终产品中使用的功能,其DLVR功能就是最近的一个例子。
自然地,人们会假设,如果“实验”功能运行得非常好,如果它不需要任何额外的调整(比如3DV-Cache所需的额外L3缓存片),它就会包含在最终产品中。这意味着“实验性”或“很高兴拥有但不重要或需要达到目标”功能之间的界限可能有点模糊。无论哪种情况,AMD表示预取机制都按预期在RDNA3上运行。
房间里的另一头大象是AMD使用RDNA3硅的A0步进,这意味着这是该芯片的第一个物理未修改版本。这导致有人声称AMD正在运送“未完成的硅”,但这种猜测是站不住脚的。
AMD没有回应我们关于它是否在第一波RDNA3CPU中使用A0硅的问题,但业内消息人士告诉我们,该公司确实在Navi31中使用了A0硅。事实上,我们被告知该公司推出了几乎所有6000系列和大部分5000系列的A0版本芯片。
这并不表示“未完成的产品”。所有设计团队的目标是在第一次设计时就用可工作的、可交付的芯片来确定设计。例如,Nvidia也经常出货A0步进硅。
微处理器在其生命周期内可能会经历多次修订,通常是为了修复错误或勘误表和/或提高性能。通常,晶圆厂对硅的第一次修改是A0,随后的“次要”重新设计(更改为金属层)将被归类为A1、A2等。硅版本创建切换到“B”或连续的字母,等等。随着芯片的改进,更新的字母数字指示器继续使用这种方法。
几乎所有复杂的芯片都有已知和未知的勘误表和错误,这些错误和错误可以通过固件、驱动程序和软件解决方法来解决,这些方法可以减少或消除这些问题,并且它们以这种方式发货——这就是现代半导体设计和生产的本质。例如,英特尔的Skylake一代处理器附带53个已知勘误表,六个月后,英特尔又列出了40个勘误表。这很常见,因为芯片设计周期很长,通常需要数年,因此通常没有时间重新设计芯片来解决小问题。我们也从其他类型和几代处理器中看到了类似的趋势。
然而,并非所有勘误表都可以通过变通办法解决,因此如果认为有必要,一些问题将在以后的硅步进中得到解决。但任何设计团队的目标都保持不变,即在第一次旋转时交付能够满足出货产品设计目标的硅片。在这方面,使用A0硅被认为是本垒打。
还有许多芯片在设计/验证过程中存在问题,需要多步才能推向市场的例子。比如SapphireRapids,最后知道是12步进,到现在还没有批量出货(A0、A1、B0、C0、C1、C2、D0、E0、E2、E3、E4、E5步进)—技术上是5个基本旋转)。自然地,这导致了严重的生产延迟和错过发布日期。
制造芯片很难;它们是人类有史以来建造的最复杂的设备类别,但它们具有几乎难以想象的小功能。这会导致问题和勘误,可能需要多次修改才能消除。不要理会那些声称A0步进总是等同于“未完成的硅”的人。成功的衡量标准是运送可工作的硅片在第一次出货时就达到目标。
随着AMD开发其第一代基于小芯片的GPU,我们预计会有一些初期的痛苦,但最近一轮的猜测偏离了目标。芯片历史学家会提醒您,从令人难以置信的粗糙Ryzen1000芯片到抛光的Ryzen3000一代的发展完全重新定义了数十亿美元的市场,并颠覆了根深蒂固的老牌企业。基于小芯片的GPU最终会取得同样的成功吗?时间会证明一切,但正如您在我们的AMDRadeonRX7900XTX和XT评测中所见,我们已经找到了很多理由让AMD的新卡印象深刻。
