● 该死的浪费
以宏观角度来看,单元复用率其实可以被等效成单位时间内整个构架的有效动作总次数。当单元数量一定时,复用率越高的构架在单位时间内能够进行的总动作次数也就更高,对应的性能也就更加出色。那对于单元复用率较低的构架来说,就完全没有机会快速的提升性能了么?
有机会,而且实现方式相当简单直接——只要大量增加总单元数,便可以弥补效率方面的不足,在构架的单元复用率无法大幅提升的前提下直接等效的增加单位时间内能够进行的总动作次数。换个通俗的台词,那就是直接释放GPU的规模,用数量弥补质量。
以释放规模来增加构架有效动作总次数的RV770
通过RV670的瘦身,AMD推出了ALU规模放大250%同时以大带宽显存来满足吞吐的RV770。大幅增加的ALU总数让R600衍生物的有效动作总次数第一次有了极大的起色,与此同时,RV770还直面了缓冲资源不足的问题,在构架中引入了LDS这样的二级公用Shared资源作为ALU的释放缓冲。两种手段从总有效动作数和单元复用率两个层面同时下手,最终为RV770带来了相当不错的性能。
RV770构架细节
RV770的成功让AMD恢复了底气,但同时其在通用计算端依旧羸弱的表现也将另一个事实暴露了出来。直接放大运算资源虽然简单有效,甚至不需要对构架深层次的要素进行重塑,但当程序对ALU灵活度的需求有了质的提升的时候,以大幅增加单元总数来换取单位时间内的有效动作总次数的做法将随着单元绝对数量的激增而变得代价巨大,甚至还会因为庞大规模带来的“惯性”而将构架推向更加不灵活的方向。著名的天河一号超级计算机抛弃4870X2的事件,就直接反映了AMD这种以释放规模来应对复用率低下的手段所带来的诸如灵活度极差之类的种种问题。提升总动作次数来变相弥补单元复用率造成的问题并不是万灵药,它不能帮助AMD最终走出迷雾并重新找回前进的方向,只有最终提升构架的单元复用率,才是唯一有效的出路。
因为可用度实在过低而抛弃了4870X2的天河一号
自R600以后,在迷雾中艰难前行,并通过临时手段化解了种种危机的AMD,在等待了3代产品之后终于迎来了拨云见天的契机——DirectX 11来了。以大量直接的常规数学应用来强调单元灵活性,并将通用计算与图形计算完美结合的Compute Shader的出现,为所有参与桌面图形芯片设计的人指明了由微软划定的未来发展方向。这给AMD带来了改良自己构架,重新将单元复用率作为突出重点的机会。
但最终,我们看到的却是RV870。
RV870几乎完全是R600+RV770的翻版,它在RV770的基础上将ALU资源再次提升了100%,并提升了其他诸如材质单元以及ROP单元之类的与图形联系更加紧密的部分的资源总量。而对于DirectX 11特性的支持,仅停留在寄存器达标以及一级Shared扩大到了DirectX 11的硬性规定而已。除此之外,你完全看不到一丝一毫希望提升单元复用率的努力。
RV870构架细节,记住这该死的浪费吧……
RV870就好像浓雾中一条走起来好像很舒适,但实际上却通往无底深渊的道路。虽然通过快速的节奏,RV870让AMD成功抢占了市场的真空期并扩大了自己的短期份额,但同时也让AMD丢失了极为珍贵的转身以及再次拾取方向的机会。作为第一代DirectX 11芯片,RV870并没有在提升单元复用率方面进行任何努力,这不仅令其丧失了重要的收集DirectX 11需求的机会,错过了进入通用计算及HPC市场的第二次时机,还为AMD的整个DirectX 11时代划上了一根过低的D线。RV870对AMD后世芯片的影响是极其恶劣的,本来应该可以冲出阴霾的AMD,在RV870之后却反而在迷雾中越走越深,越来越接近危险的边缘了。
浪费,这简直就是该死的浪费……
推荐经销商