不久前,英特尔高级副总裁帕特·基辛格在上海IDF大会上曾表示,传统显卡将在两三年内消失。英特尔称,多核处理器将有足够的能力来满足高端显示需求。对此,NVIDIA CEO黄仁勋称,英特尔是在撒谎,集成显卡只能与100美元以下的独立显卡竞争。而且,在2010年之前,英特尔的集成显卡技术都无法超越NVIDIA现有技术。
缘起口水仗
2007年NVIDIA开始大力宣传“重GPU核心、轻CPU频率”论之后,这次在上海IDF大会上英特尔首次作出的“官方”回应。针对新一代可视化需求,Intel专门开发了一套面向可编程的显示计算通用架构芯片的全新架构——Larrabee架构,并计划将于今年晚些时候进行首次展示。按照英特尔的观点,可编程的显示计算通用架构芯片会在未来应用中占据越来越重要的地位,随着可编程的显示计算通用架构芯片逐步取代GPU的地位,显卡则会慢慢被集成化所取代,作为独立硬件生存下去的空间会越来越小。在许多年以后,CPU和GPU也许已经失去了目前的定义,两者合二为一成为一个全新的硬件。在这个过程完成之前,CPU在电脑中的地位将日益重要,而GPU的重要性则不断“淡化”,先是集成到主板中,最终成为CPU的“一部分”。这种论调在目前看来显然还是英特尔的一相情愿,毕竟,目前GPU的运算处理能力已经远远超越了CPU。
崛起的雄心
在几年前,GPU还是一块只能进行三维图形渲染的高集成度半导体芯片,很难有人想到,几年后的GPU已经从单一的进行三维图形渲染,变为以图形渲染为主、兼顾其他运算、处理能力的芯片。 GPU诞生于1999年。当时,NVIDIA发布了首款GeForce系列GPU,开创了图形芯片的一个新时代。在此之前,计算机的核心处理器体系结构一直受控于英特尔。按照英特尔的规划,计算机的所有功能都应被集成到一个平台上,由主司计算的CPU来完成所有数据处理工作。GPU的出现打乱了英特尔的构想,这相当于为PC额外设置了一个除了CPU之外、专司图像数据处理的“大脑”。从此,有关NVIDIA、ATI、英特尔和AMD的多角故事就围绕着GPU与CPU的关系展开。
短短几年,GPU的浮点运算能力得到了高速提升。到了2006年,GPU的浮点运算能力已经数倍于主流处理器了。如果只用GPU来做三维图形渲染,的确浪费GPU的浮点运算能力。GPU和CPU的所有恩恩怨怨,其实都是3D惹的祸。如果说当年的3D软加速是CPU干了GPU的活儿,那物理加速卡的出现就是GPU抢了CPU的饭碗。GPU可以有效地执行多种运算,不仅仅作为绘制引擎,而是将成为个人电脑的主要计算引擎,而NVIDIA也是在此刻逐渐滋生了“逐鹿”的雄心。
CUDA 重装上阵
去年1月初NVIDIA正式推出了CUDA(Compute Unified Device Architecture统一计算设备架构),并对GPU的功能进行了重新的定义。CUDA实际上是一个革命性的计算架构和计算思路,能够让GPU在消费、商务、技术等应用方面大展拳脚,解决复杂的计算问题。NVIDIA设计CUDA,就是为了使用性能日益提升的GPU性能,协助CPU进行复杂的运算。
CUDA的推出,正是利用了GPU的高运算能力,配合CPU进行高性能通用计算。CUDA究竟能做什么呢?举个最简单的例子,1998年的好莱坞大片《泰坦尼克号》,是在摄影棚中完成的,剧组只是在摄影棚中搭建了一艘泰坦尼克号模型,而大海、天空等周围的景色,都是由计算机制作的——剧组使用了多组Xeon工作站,对画面进行离线渲染,最终花费了数月时间,才将《泰坦尼克号》中的美景呈现在全球观众面前。
好莱坞是个惜时如金的地方,随着数字电影在全球的普及,制片人和投资公司很难再忍受过长的制作周期。CUDA的用处正好能够发挥出来——以G80为例(G80是NVIDIA新一代的游戏平台的核心),它能够将复杂的电影画面分成一个个小的部分,然后进行平行化计算,每个流处理器可以模拟其中的一个线程。平行化计算可以有效降低同类别问题的运算时间,从而提升运算效率。通俗地说,CPU是一针针勾毛线,那么GPU就是织布机,快速重复同一个动作,如果在今天来拍摄《泰坦尼克号》,那么好莱坞的制片商将会节省1/3的资金。
CPU GPU 花落谁家?
那么,下一站天王会不会是NVIDIA 呢?至少NVIDIA已经展现了它可怕的实力,而业内也都感觉到了一股力量的崛起,英特尔在IDF上如此露骨演讲多多少少表露出了一丝焦虑的心态。
自从DirectX 10和统一Shader架构的出现,让GPU在可编程性上有了大幅度的提升。不仅如此,飞速发展的制造工艺令GPU可以整合更多的晶体管,实现更多的功能。目前的GPU,已经可以帮助CPU进行对高清视频的完全硬解码,虽然是通过加入了专门的处理单元,但其意义已经足以说明GPU在未来的计算领域将会有一番大作为,位置从CPU的从属,转变为主导。
目前为止,GPU和CUDA的配合,还只是应用于商业高端运算。随着时间的推移,CUDA在经过NVIDIA的完善后,最终也会进入民用领域、桌面市场。这并不是一个空谈,因为现在GPU所具备的几个特性,让业界对未来GPU包办一切的前景非常看好。
高浮点运算能力:GPU之所以能够辅助CPU进行通用计算,依托的就是GPU几倍于CPU的浮点运算能力。一旦GPU和CUDA的配合应用到桌面平台,PC就拥有了具备高性能浮点运算的能力,这就使得PC摇身一变,成为了一台个人超级计算机——当PC的运算能力成倍增长时,还有什么不能做?
目前的CUDA和GPU的配合还处于起步阶段,尚未面向真正的民用市场。不过,利用GPU进行高性能计算的门槛很低,只要有一片Quadro或GeForce 8系列显卡,就能够进行高性能计算,一些研究人员也已经开始使用CUDA,利用GPU数倍于CPU的浮点运算能力,进行各种各样的科学模拟、运算。 CUDA的推出对于通用计算领域无疑是一个革命性的改变,而GPU的实际功能也会随着CUDA的完善而变革。按照NVIDIA的设想,也许在不远的将来,因为CUDA的存在,CPU的运算功能将会不断淡化,GPU的时代即将到来。(完) |