技术开发 频道

GPU的各种RT效果是否预示着下一轮洗牌

  【IT168 评论】熟悉图形处理器发展历史的人可能都有印象,当PC图形出现一次重大变革的时候总是伴随着一轮接着一轮的市场更替。早期的Trident等公司在图形处理器进入到PCI总线、真彩色、Windows GDI加速的时代,很快把市场主流交给了Cirrus Logic以及S3的手中;而当3D在游戏中成功应用后,崛起的是3Dfx、NVIDIA、ATI、3DLabs这些公司;最后一次真正的市场洗牌是当NVIDIA GeForce 256出来后,内置leT&L(几何变换与光照)引擎的NVIDIA GPU(包括真正在市场上获得巨大成功的GeForce 2系列)几乎把除了ATI以外的所有3D图形处理器赶尽杀绝。这种杀戮不仅仅在消费级图形的领域,也出现在工作站图形的领域,使用和GeForce 256相同内核的Quadro卡(也包括后续的Quadro型号)具备天生的高性能和低成本,使得那些采用专用处理器的专业图形处理器完全无法招架,最后不得不退出这个市场。随后的时间,大家只看见NVIDIA和ATI两个能力以及产品风格类似的公司在市场上的竞争此消彼长,处于僵持和胶着的状态,其间昙花一现出现的新的公司和产品几乎不值得一提。这种情况已经持续了快10年,对于惟恐天下不乱的媒体和技术爱好者,难免感觉到十分的乏味。

  转机出现在最近两年,这就是实时光线追踪(RayTrace)技术被大家所重视。现有的实时图形技术完全基于于光栅化(Rasterization),虽说经过这么多年的发展,特别是可编程技术的引入,光栅化技术看起来无所不能,可以生成诸如Crysis这样复杂逼真的场景,但是真正现实中随处可见的很多现象却从未在任何游戏中体现出来,包括真实的反射、真实的折射及半透明、间接照明及颜色混合等等。这些效果使用传统的光栅化来解决几乎完全是没有可能的,近似模拟也很难,但是光线追踪算法却很容易实现,因为光线追踪算法本质上是一种自然的算法,和光线传播的实际方式很接近。这也是大家突然对光线追踪技术感兴趣的一个很重要的原因。

  不过光线追踪要实现实时化,目前还有很多难题,首先是从算法上来说,光线追踪是算法密集型的,每一条光线计算需要做大量递归以生成更多的光线,程序中很多分支和循环;另一个方面,光线追踪算法也是计算密集型的,要求处理器有很强的计算能力。这正是矛盾的地方,对于现有的CPU来说,算法密集型的程序很适合,但是运算能力不够;而GPU则是有很强的计算能力,但是并不适应复杂的算法。这种矛盾的情形似乎给了第三方厂商一个机会--生产一个专门的光线追踪处理器,等到市场转向光线追踪的时候,乘机对现在的厂商取而代之。Caustic Graphics,真是这样的公司,他们推出了第一个专门的光线追踪的处理器,现在已经可以做一些演示,最终的产品据称在明年可以出来。

  不过且慢,现有的厂商也不是在睡大觉。NVIDIA和Intel都在光线追踪技术上下了大功夫。对于Intel来说,他们在一两年前就开始宣称Larrabee才是实现光线追踪的非常好的架构。Larrabee同时具备几十个核,每个核含有一个标量处理器(传统的X86 CPU)以及一个超级向量处理器,因此理论上同时具备运行光线追踪程序所需要的算法和运算的能力;而NVIDIA则大肆宣称光栅化和光线追踪的结合--将光线追踪计算的结果导入到光栅化的pipeline中,使得同时实现光线追踪的效果以及充分利用光栅化的高效率。在这方面,毫无疑问NVIDIA走在最前面,他们刚刚发布了一套实用的基于GPU的光线追踪的API--OptiX,可以免费提供给开发者将实时或者是可交互的光线追踪的效果加入到各种程序中,当然,这些效果只能在NVIDIA的GPU上才能实现。

  现在的情况很有趣,在实时光线追踪这个领域,一方面是第三方厂商开始的步步紧逼,另一方面是现有公司的防守反击。真的会出现洗牌的情况吗?我也不确定,但是我相信现在和过去的情况很不一样。首先现在的图形处理器高度复杂,每一代处理器需要上百人进行设计,需要动辄几亿美元的投入,因此小公司是否有这个能力很难预料;其次光线追踪技术虽然火热,但是目前更多在虚拟现实以及工业设计等领域应用,相对是个小众市场,而现有的图形公司凭借游戏市场的巨大生产量可以将生产成本摊薄到很低的水平,而专用的RT处理器则很难想象可以做到这么低的成本。对于普通消费者来说,大家可能更多地关注什么时候可以在游戏上看见RT效果,我的看法是还要很多年。游戏开发者相对更加保守,因为谁也不希望游戏只能在少数的GPU上才能运行,因此新的技术很难被迅速采用,诸如DirectX 10推出了快三年了,采用的游戏仅仅十几款,要指望他们很快采用更激进的RT技术,恐怕不太现实。不过,不管怎么样,光线追踪技术是一个很好的东西,值得硬件和软件厂商花大力气去解决应用中的问题,大家总有一天会在游戏中看到各种RT效果,但是是否会导致新一轮的洗牌?我不这样认为。

0
相关文章