摩尔的预言 唯有CUDA才是终极的CPU(一)
上一篇 /
下一篇 2008-07-28 10:05:43
/ 个人分类:媒体评论
开篇前言:终极的CPU
现在很多人在谈论GPGPU和CUDA这样的通用计算技术,几乎很多硬件的评测,都要跟这个扯上点关系。但是那些泛泛而谈的文章根本没说到点儿上。在NVIDIA发布GT200系列显示芯片之后,这种基于GPU的通用进算更High到了前所未有的高潮。就连Intel也放胆,标榜其下一代独立显卡Larrabee有多么超强的通用计算能力。今天小编我就来跟大家深入到CUDA的内部,为大家诠释为什么说:唯有NVIDIA CUDA才是终极的CPU。小熊在线www.beareyes.com.cn
让我们先回溯过去的一段时间,早在2003年,Intel和AMD都在不遗余力的为生产出性能强大的处理器而打拼着。由于两大公司的激烈竞争,在短短几年的时间里,处理器的主频时钟速度有了显著的提升。尤其是到了Intel的Pentium 4时代,处理器的时钟频率狂飙到了一个前所未有的高度。小熊在线www.beareyes.com.cn

傻快傻快的奔腾4
但是随着制造工艺技术的制约,这种时钟频率的提升很快就碰到了壁垒。从2001年至2003年,Pentium 4处理器的时钟频率从最初的1.5GHz提升到了3GHz。然而从2003年到2005年,整整2年的时间里,处理器的时钟频率提升的速度骤然放缓,只是从3GHz增加到3.8GHz。小熊在线www.beareyes.com.cn

处理器频率大战在2005年画上了休止符
在最后,Intel到了强弩之末之时仍然不肯放弃。他们充分的优化了处理器的架构,使之可以运行在更高的频率上,Prescott核心就是这种造神运动的产物。不过Intel所面对的问题已经不再是工业制造技术的问题了,芯片制造商所面对的是最简单最基本的物理定律的壁垒。一些评论家甚至提出摩尔定律也将就此失效。不过事实远非如此,只是摩尔定律最初的意思被很多人曲解罢了。摩尔定律所述的是有关在一定面积内的晶体管的集成度。只是长期以来,处理器晶体管集成度的提高都会伴随着性能的提升和时钟频率的提高罢了。这必然很容易让无知的人将摩尔定律的本源所曲解。在后来,情况又变得更加复杂了。随着处理器架构的革新,晶体管的集成度也越来越高,并且正向着一条死胡同儿发展。
摩尔定律与运算效能
CPU制造商正在尽力寻找解决问题的方法时,GPU制造商却迎来了前所未有的机会,显示核心比处理器更试用摩尔定律。小熊在线www.beareyes.com.cn

GPU的机会来了
为什么Intel不能在CPU中运用相同的设计,让处理器跑的更快呢?其实原因非常简单,处理器的设计宗旨就是要从指令流中得到最高的处理效能。由此处理器的设计师们使用了很多附加的措施,例如将数据分为浮点、整数等不同的数据类型,嵌入随机存储装置,使用分支预测技术等等。而优秀的处理器架构就能在同一时间处理更多条指令,就是传说中的并行处理。由此,Pentium处理器中引入了超标量执行的概念,在某些情况下,每个时钟周期可以处理2条指令。而在Pentium Pro处理器时代,又迎来了out-of-order乱序执行的概念。为了更好的利用执行单元,处理器可以乱序执行指令,进一步提高指令处理的效能。可是问题是指令流是连续的,它会大大制约并行执行单元的效率。因此盲目的在处理器中增加并行执行单元是毫无用处的,他们可能在绝大多数时间处于空闲状态。这也是目前困扰多核心处理器的一大问题。小熊在线www.beareyes.com.cn
反过来说,GPU在运作时就非常之简单了。它的工作就是要生成一组多边形,同时产生一组像素填充到多边形中去。多边形和像素之间的处理操作是独立的,因此他们能使用并行处理的思想,在处理流水线中尽可能的加入更多的并行执行单元来加快处理的速度。这就意味着GPU将会有更多的执行处理单元处于忙碌状态,这会比CPU具备更高的处理效能。小熊在线www.beareyes.com.cn

简单而强大的GPU
GPU与CPU另一个不同之处就是记忆体。GPU与显存之间的联系极为亲密。当GPU要读取一个材质单元时,需要使用几个时钟周期读取临近的材质单元。并且当写入一个像素的时候,也需要花费几个时钟周期参考临近的单元。这种机制对于内存来说是非常有利的,理论上讲它可以更加合理的利用显存带宽。GPU与CPU不同之处在于,GPU不需要庞大的高速缓存。缓存的目的仅仅是加速材质的处理速度。几KB的空间就能包含所需要的三线和双线过滤文件。小熊在线www.beareyes.com.cn

横空出世:GeForce FX
CPU与GPU是完全两个独立的世界,这种分离持续的时间相当长。我们使用CPU来进行办公、互联网冲浪等应用。而GPU仅仅是为了更快的绘制出漂亮的图像。但是一个理念的出现,彻底的改变了传统。GPU具备了可编程性。这让CPU感到了一种前所未有的恐慌。第一款被称作可编程的GPU是NVIDIA的NV20,就是传说中的Geforce3,不过它远远不能对CPU的地位构成威胁。它能够处理的程序指令还非常有限,大约在10条左右,另外它所能处理的数据类型也非常之有限,只能处理9或12bit固定长度的数据。小熊在线www.beareyes.com.cn

传说中的GeForce FX
当NVIDIA的NV30发布的时候,摩尔定律再次得到了印证,不仅仅是晶体管数量的增加,计算单元的数量也成倍增长。同时这也使得显卡芯片更具灵活性。因此NVIDIA的NV30具备许多革命性的突破。虽然游戏发烧友可能并不会像跪拜Voodoo 6000那样将一块GeForce FX当作自己最心爱的收藏,但是它真的让GPU看上去不仅仅是一颗图形加速器。小熊在线www.beareyes.com.cn
从NV30起,GPU开始支持单精度浮点运算,即使它并不完全支持IEEE754标准,但这消息却让许多程序员感到振奋人心。另外它还支持超过数以万记的指令处理。这一点是最吸引研究人员的地方,他们可以通过一些途径找到突破芯片生产工艺技术的壁垒,制造出性能更为强大的芯片。小
导入论坛
引用链接
收藏
分享给好友
推荐到圈子
管理
举报
TAG:
cpu
cuda
gpu
并行计算