显卡告别3D游戏迈向通用计算时代

  • 来源:《个人电脑》 作者:张健浪
  • 发布日期:2007-08-18
  • 关键词:PPU GPU 显卡 3D

GPU实现流处理加速
      超级计算机系统普遍都具有强悍的并行浮点计算能力,以便完成如科学计算、宇宙探索、气象预报、分子生物计算、核模拟、虚拟现实之类的研究。现行的超级计算机大都采用对等处理架构,即由通用的处理器来负责浮点运算。这一领域基本上都是RISC架构的天下,IBM的Power平台、富士通的SPARC64平台、英特尔的Itanium平台(EPIC架构)便是其中的代表者。为了实现尽可能高的性能,超级计算机都不遗余力地增加处理器数量,同时积极开发技术更先进的处理器产品,但这样做并不是特别有效率。当前世界上运算速度最快的计算机当属IBM的“蓝色基因/L(Blue Gene/L)”,它的峰值浮点性能达到367TFlops,但为此付出的代价就是动用了65536枚双核心处理器,也就是131072个CPU内核,硬件规模极其惊人。为此,IBM和SUN都提出采用协处理器加速的方法来获得更高的效率,其中的典型代表者就是IBM的Cell平台,它以专用设计获得远超通用处理器的浮点性能。

AMD推出的FireStream流处理加速卡,基于R580图形处理器。

      不过光就浮点运算能力而言,Cell显然不是GPU的对手。AMD-ATI的Radeon X1900 GPU即可拥有高达375GFlops的浮点性能,新一代R600 GPU更将具有512GFlops的超级计算能力(当然,nVIDIA的GPU同样拥有非凡的浮点效能)。ATI很早就提出了“流计算”的概念,即利用GPU的可编程特性以及R500架构所拥有的庞大像素处理器来完成一些通用的浮点计算任务,借此获得远超过通用型处理器的效能表现。ATI后来被AMD成功收购,而AMD继承了ATI的这项研究并在2006年度的超级计算机大会上拿出相应的“流处理器加速卡”—这块加速卡采用Radeon X1900 GPU和PCI Express X16接口,它与普通Radeon X1900显卡的区别在于:流处理器卡加入一些特殊的控制电路,内存控制器也经过调整以优化并行的流计算任务,为了满足繁重的任务需求,流加速卡配备了1.3GHz频率的GDDR3内存,且容量高达1GB之多。加上Radeon X1900 GPU自身具有的48个像素处理器(每个像素处理器由两个算术逻辑ALU、两个标量ALU和一个分支执行单元构成)和600MHz高频率,该流处理加速卡最终实现375GFlops浮点的通用计算能力。AMD流处理加速卡的另一项关键技术就是它所支持的“CTM(Close To Metal)”应用程序接口,CTM可以令应用程序直接访问GPU的原生指令集和内存,最终实现八倍于传统3D图形API的浮点效能。AMD将该款流处理加速卡与标准的Radeon X1950XTX显卡进行MatMult标准测试,基于CTM接口的加速卡在执行通用计算任务时可提供96GFlops的实际浮点性能,而基于OpenGL API的Radeon X1950XTX显卡的运算速度仅为12GFlops,同当前的主流型X86处理器相当。AMD对自己的这项成果非常骄傲,它们表示如果在超级计算机系统中采用流处理加速卡,那么理论上大约只要不到1000块加速卡就能够获得媲美IBM“蓝色基因/L”的性能水平。目前AMD已经开始向OEM厂商供应这种流处理加速卡(当然价格不菲),同时吸引超过60家企业和研究机构进入AMD的这一研究项目,AMD表示这种加速卡虽然暂时供应高性能计算市场,但未来将会引入消费市场,用于完成视频编解码加速和图像的处理,尤其是H.264编码任务非常适合由GPU来处理。当然要实现这个目标,需要硬件厂商与软件工业的共同努力。

      在AMD锐意拓展高性能计算市场的同时,nVIDIA也没有闲着,事实上,早在2004年9月份,剑桥大学的BionicFX小组就率先采用GeForce 6800图形处理器来完成音频效果的计算。BionicFX发明了一项AVEX(Audio Video EXchange音频视频转换)技术,AVEX的工作原理是将音频流转换成图形格式的数据,这些图形数据在GeForce 6800 GPU上按照像素或区格来进行处理(按音频效果算法),并于显示内存中读取结构,最终计算结果再被还原为音频信号,由此完成了GPU处理音频效果生成的全过程。第一个采用AVEX技术的混响VST插件便是2005年冬季亮相的BionicReverb,这款插件可以实时模拟出各个真实声学条件下的混响音频,效果近乎完美,而在这背后就是堪称巨量的精确计算。得益于AVEX技术,GeForce 6800承担了这一任务,否则要是由通用的X86处理器来负责的话,系统资源估计会被拖垮。遗憾的是,nVIDIA并没有意识到其中的机会,所以未能及时投入相关的研究,错失在这个新领域领先对手的良机。现在nVIDIA也在积极从事这方面的研究以期赶上AMD,尽管没有披露何时拿出可供实用化的商业解决方案,但以GeForce 8800 GPU所采用的128个流处理器设计来看,nVIDIA同样能够让自己的GPU产品进入高性能计算市场。

      现在,GPU又有了一个新的工作:用在超级计算机系统中,完成浮点加速任务。AMD和nVIDIA大概都可以在这个市场狂卖高端GPU产品了,而这个市场向来是利润丰厚:AMD的流处理加速卡定价高达2600美元,而它的成本和一块Radeon X1900 XTX显卡相当,后者的市场价格现在还不到400美元。在不远的将来,流处理加速技术会出现在消费市场,帮助CPU完成诸如影像编码之类任务,或许在跑Super Pi测试的时候,GPU也许还能够帮上大忙。

[an error occurred while processing this directive]

相关文章