王者之间的较量,R300 VS NV30深度
简单性能分析:
R300的测试数据满天飞,这里实在不用我再多废话,仅仅给出Radeon 9700 Pro(325MHz)与GeForce 4 Ti 4600(300MHz)有关几何吞吐量的理论和实测数据对比,好用来让笔者发表评论。
注意,几何吞吐量(对于R300/NV30,也可以称多边形吞吐量、三角形吞吐量)并不等同于变换速率。不过,理论上,没有瓶颈的GPU能够做到几何变换速率等同于单光源、单纹理贴图情况下的几何吞吐量。因此,这里我们还是可以看出,与上一代GPU相比,R300尽管拥有骇人听闻的三角形变换速率,可是实现效率并没有提高,与GeForce 4 Ti大致在一个水平上。
当然,这里可能存在两方面的原因:1)R300的驱动程序仍然有待于完善。历史记录表明:nVIDIA在驱动程序质量上确实高于ATi,但是近来ATi在驱动程序质量的巨大进步也是大家都能够看得到的事实。不过R300毕竟是全新的体系结构,其驱动程序仍然存在不少的潜力可以挖掘应该是个事实。2)R300的三角形建立引擎还是不够强劲。栽倒在三角形建立引擎上的名家GPU,嘿嘿,有案可查,早先的ATi的Radeon,眼前的Matrox呕心沥血的Parhelia 512。三角形建立引擎的效率高低直接决定了GPU的几何吞吐量大小(不明白,看看R300的VPU结构图)。如果主要原因在于三角形建立引擎,则R300很难通过驱动程序优化大幅度的提高其几何吞吐量,希望不是如此。
那么,NV30的几何变换速率如何呢?让我们先来看看理论值,现在也只能看看理论值。依据:nVIDIA公然宣称,在同一时钟频率下,NV30的顶点性能是NV20的3倍,是NV25的1.5。这其实就是笔者推断NV30只拥有3个并列的VS处理单元的原因,因为NV20拥有1个,而NV25拥有2个。从另外一个nVIDIA制作工艺白皮书,笔者又了解到NV30的工作频率为450MHz。好了,让我们来算算吧:
呵呵,从理论上来看,NV30被R300比了下去。那么实际情况如何呢?笔者这里给出一些推论:
1、理论变换速率是一个重要指标,但是在实际性能中还要受到其他很多因素的制约,例如,前面提到的驱动程序和三角形建立引擎效率因素。因此,NV30有可能在实际三角形吞吐量上超过R300。当然,也有可能差距拉大。
2、理论变换速率仅仅执行了最简单的VS指令操作,不能够反映在执行复杂着色程序时顶点处理器的效率。从前面的分析中,我们可以看出,理论上NV30在执行复杂着色程序时与R300相比具有明显优势。
小结:如果刨除可能存在的三角形建立引擎效率和驱动程序效率因素,理论上,在运行旧有的或者现有的没有使用或者很少量的使用了顶点着色程序的3D游戏时,R300在顶点数据处理能力上要比NV30有少量优势(325 : 306),但是,在运行采用了大量复杂顶点着色程序的未来游戏,NV30与R300相比,在顶点数据处理能力上应该有较大优势。此外,R300顶点处理器能够完成的效果,NV30应该都有能力完成;不过,某些NV30顶点处理器能够实时完成的效果,R300的处理能力可能无法胜任。<