安逸or进取?从显卡进行探窥企业之道
上位的想永远稳坐江山,失意的则希望翻身做主人,这是人类社会的共性。
双方在经历过丰富市场的G9X架构月RV6XX核心的交锋后,再次迎来了决战。NVIDIA这次祭出了GT200架构,而AMD则放出了RV770,双方都在上一代架构的基础上进行了大量的变化,有人说GT200就似乎G80的加强,而RV770就是R600的增效,事实真的如此么?
我们从GT200的架构图中也许获得的最直观信息就是SP运算单元被大幅度扩充,从G80的128个扩展到了240,而显存位宽则从384bit提升到了512bit。这似乎正如部分传言所说的那样,就是G80的横向扩充版本,类似与intel路线图中的tick-tock。
但实际上GT200的真正变化是发生在我们看不到的地方,至少从一张粗略的架构图中很难从察觉。首先GT200正式拥有了Dual-Issue能力,可以同步处理两条指令,这将极大提升GT200核心的运算效能。另外,GT200率先支持了双精度64bit浮点运算,使得GT200的运算能力适用范围更广泛。
如果单纯从图形或者游戏性能角度看,这些变化所带来的成本上升和研发周期与性能提升不成正比,但新技术的出现显然是需要在新应用出现之前铺好路。今天我们已经熟悉了GPU的通用运算价值,平时的图片视频编辑在GPU加速上速度成倍提升,而游戏方面则因为GPU通用运算的加速使得物理加速更逼真绚丽,这都是硬件机能进行适应性变化后的结果。而这些重大变化,都是在GT200核心上完成的。
实际上G80时代已经初步具备了这样的功能,但仅仅是拥有,随着应用需求的提升,就需要更完美支持像CUDA并行运算技术的出现。GT200从两方面对应了这种需求,第一就是规模上的扩张,提供更强大的物理运算能力;其次就是在架构上的变化,让应用范围和效能进一步提升。NVIDIA的创新性在这里再一次体现,当对手还在紧盯图形运算不放时,NVIDIA已经敏锐的看到了GPU巨大的潜力和价值,提早做好了硬件和应用两端的准备,让自己有机会提升竞争层次。
上图是AMD RV770的架构图,大体上看确实就是R600的双倍扩展。当然,其中也发生了一定的变化,将内存控制器从被证明效率地下的RingBus换回了CrossBar,并提升了RBE单元的效能,让AA性能回复应有水平。但就和性运算单元而言,依然沿用了R600“成熟”的方案,性能的提升直接与成倍扩展的规模挂钩。既然事实证明R600这种延续子DX9时代的架构并不是新时代环境下的非常好的选择,为什么AMD还坚持不懈呢?简单讲,由于5D矢量单元的晶体管数量占据优势,所以AMD拥有更多可堆放晶体管的资本,简单扩展成为了最直接最简单提升性能的手段,何乐而不为?但这未免让人有些失望,这样做也许可以在图形性能上和对手拉近差距,但却措施了创新领先的机会,更错过了GPU通用计算的制高点。
我们数据题外话,上文有叙述过,在GT200、RV770这一代,GPU最大的变化就是通用计算,实际上从显卡具备shader单元开始,这一话题就开始出现,只不过早期这类应用都是以实验的形式出现在各大院校的实验室里。而随着对GPU能力认知的不断提高,和各类应用对运算能力需求的提升,GPGPU(General Purpose GPU)的概念开始成型,也就是我们所说的GPU通用运算。实际上先迈出这一步的是AMD,基于当时强大的R580核心推出了FireSteam通用运算显卡。但涉及到运算,就绝对不是简单的硬件能解决的事情,就好象你拥有一部i7处理器+GTX580的电脑,没有安装操作系统和驱动,一样是堆废铁。
AMD虽然最先一批推出了硬件产品,但在开发层面和应用层面毫无作为,更像是一个坐收渔利的老翁,或者仅仅是表明一种态度,任由别人来拾柴点火。NVIDIA看到了GPU通用运算的巨大潜力和市场,首先利用强大的设计能力让GPU更符合通用运算的要求(1D、GigaThread、更多的cache),另外就是着手开发了CUDA的GPU编程环境,让任何希望开发GPU应用的人很方便的可以入手,相当于为他们提供了工具,这就解决了开发端的问题;而在应用端,NVIDIA与各大软件厂商高度配合,从桌面领域的视频图像处理入手,很快就积累起了庞大的软件应用库,而收购了以物理加速而闻名的ageia和PhysX技术后,直接迁移至自己的GPU产品上,让游戏玩家领略到了非图形运算带来的震撼视觉效果,而PhysX能顺利迁移自然离不开NVIDIA在核心架构和CUDA环境下的提前准备。
桌面市场的成功,进而让NVIDIA有资本向高性能计算领域扩展,顺势推出的Tesla产品线一举成为了当今高性能计算机TOP500中不可或缺的加速器,让计算机的运算能力加速提升。
至此,我们更清晰的看到NVIDIA的创新不仅仅是产品线,更是理念上的,从GPU架构的革新设计,到软件开发层面的伏笔,再到应用端的全面开花结果以及进军高性能计算领域,显然NVIDIA没有执迷于与对手在原始的图形运算中争执,而是不断提高自我,向更新的目标进发。