CPU与GPU的吵架.doc_第1页
CPU与GPU的吵架.doc_第2页
CPU与GPU的吵架.doc_第3页
CPU与GPU的吵架.doc_第4页
CPU与GPU的吵架.doc_第5页
免费预览已结束,剩余3页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

CPU与GPU的吵架本文是站在纯技术讨论的层面上的,并无其他意思。GPU:跑PI根本就不能客观的反应CPU的性能,CPU本来就不擅长浮点运算,CPU主要是用来做整数运算的。如果让GPU如G80来跑PI恐怕5s都用不了。如果K10真的集成GPU核心,那么1M位SuperPI将毫无意义-很可能用不了1s。(注GPU具有极强的浮点运算能力-级别为万亿次浮点运算/秒,这也是为什么CPU不能用于3D图形渲染的主要原因。)CPU:CPU不能用于3D图形渲染实在不敢苟同如果你说高质量的实时渲染CPU完成不了还差不多目前真正的工业/电影级别的3D渲染最后是CPU完成的GPU的精度和可编程能力还远远不足GPU:从目前的情况来看CPU的浮点运算能力很差,如目前顶级的CPU的浮点运算能力为20GFlops,而GPU已经达到了1TFlops,高出CPU几十倍。而擅长整数运算的CPU的运算精度显然没有GPU高,同时通用性也不高,这也是为什么通用处理器大多为GPU架构的重要原因。CPU的优势在于对于复杂过程的处理。同时二者基于不同的编程结构,可以说编程能力方面二者并无明显差距。CPU:而擅长整数运算的CPU的运算精度显然没有GPU高,同时通用性也不高,这也是为什么通用处理器大多为GPU架构的重要原因彻底不敢苟同Flops只是指令IO数量而已要运行同一个指令体系比较才有意义即使目前GPU的浮点运算能力超过CPU但是其精度和可编程性比集cpu还是差距明显在绝大多数领域应用起来还很困难否则渲染农场/核爆模拟/地质测绘/天气预报之类的集群也不会还在CPU上大作文章了但以GPU的某些优势以及编程环境的普及在上述领域会取得一定成绩但是替代显然不可能GPU:渲染肯定是不会用CPU的,要不然上万块的专业图形卡用来做什么?3DMark的图形渲染测试已经很明显证明,一般GPU可以流畅渲染的场景,末前顶级的CPU却也仅仅是勉强能够承受而已。即使用CPU作渲染也不可能是使用Intel和AMD这样基于X86架构的微处理器,一定程度上说也更类似于GPU。GPU的通用性也远远好于CPU,目前用于科学计算的大型计算机都是使用基于GPU架构的处理器。如nVidia开发的通用计算机就是基于G80架构,而IBM的蓝色基因巨型计算机亦是如此。其计算精度远远高于目前桌面CPU。CPU:渲染分好多种你说的是实时的渲染要靠GPU来完成比如游戏以及专业软件中的编辑模式下但是工业设计/电影特效等的3D渲染最后都是CPU完成的这类应用的代表是渲染农场GPU本来就是一个专用功能的部件进入DX8之后开始拥有部分的可编程性进入到DX10时代后这种可编程性大大提高了但是还远不及本来就是作为通用部件设计的CPU来的好通用性远不及CPU即使NVIDIA开发的TESLA平台产品目前应用面也非常狭窄而且应用数量也非常少目前的高性能系统没有一个采用GPU平台搭建大部分应用还在摸索过程中主要原因就是其通用性不强所有的程序需要重新编写IBM的蓝色基因用的根本就是POWER系列CPU与GPU根本不一样你说的可能是CELLCELL从任何一方面说都是CPU而不是GPU因为CELL的构造能高效的完成一些GPU的工作而已这是目前运算能力世界第一的IBM蓝色基因/L系统用的是POWER PC 440 700MHz处理器典型到不能再典型的CPU而非什么GPU而且GPU的精度绝对比不上CPU这是运算单元设计所决定的GPU再被设计的初衷并不是去做通用计算现在运算能力top500里没有一个系统是由GPU搭建的主要还是因为GPU的通用性和可编程性决定了它所拥有的巨大理论运算能力不能在非图形渲染的应用中发挥出来不过随着开发环境的成熟以及未来GPU通用性的进一步提高也许会有一天top500里出现GPU系统GPU:其实CPU和GPU本就没有什么太大的区别,同样叫做-处理器,CPU主要用作程序的处理,同时严格的说经典CPU-8086只能用作处理整数,而浮点运算需要指定的运算单元。而POWER PC已近加入了很多经典CPU-基于X86架构所不具有的特性,如加入的3D运算特性,是否还能称其为CPU已经很不好说了,那不过十人们的一种习惯的称法罢了。而且电影特效的渲染同样也是可以用GPU完成的-如Nvidia的Quadro就是为此而生,很多新的影片已经开始用Quadro渲染,其效率大大高于传统的X86架构CPU。我也要纠正你的一个问题就是-渲染农场是多CPU并联而得到的效果,单个CPU是很难独立完成的,用的是CPU相对成熟的并行处理技术,以及较为低廉的成本而已。还有就是除了传统意义上的桌面CPU-Intel和AMD的基于X86架构的CPU,其他的CPU都已经向通用性方面发展,这也是处理器发展的大趋势-CPU和GPU从分离到重新融合的过程。CPU:X86只是CPU中的一个指令集而已,POWER本来就不是X86,是POWER PC架构的CPU,RISC体系的,我不知道怎么就不能叫CPU了说了半天你认为我就只在说8086么,X86及其以后的X87以及SSE等等指令集都是什么,你认为现在谁说X86或者说CPU就是说8086么能请你举个是由Quadro渲染出来的电影么,根本没有,Quadro这类显卡不过是为了提高专业软件在编辑模式下的速度,所有的专业卡的生产目的都是如此,而不是去做最后的出片渲染,只不过随着GPU通用性的增强,NV/ATI开始提供部分可以可以辅助CPU渲染的渲染器罢了,比如NV的Gelato,不过大部分渲染任务还是CPU完成,而这类渲染器现在只不过是标榜GPU可以参与最终渲染,而实际工作中根本就没有使用的渲染农场是多CPU集群,我从来没说不是,但这是不是由CPU来渲染3D图形呢,而且这样做也不是为了降低成本,反而是现在GPU厂商推动的现在这股GPU通用运算热潮才是希望降低硬件成本.谁说单个CPU就不能做3D渲染,三维动画工作者哪个平时做东西不是靠自己的PC或者工作站离的CPU来完成渲染的,你可以去火星时代的论坛问问看,单个CPU如何就不能进行3D渲染了呢,慢归慢,但是专业软件的渲染器只能靠CPU来完成最终渲染,GPU在这里一点用不没用其他的CPU都已经向通用性方面发展CPU本来就是通用性最强的处理器,何来向通用性发展一说,倒是GPU通用能力远远不足GPU:我所指的x86绝对不仅仅是一个指令集而已,也不特指8086,而应该是一个处理器系列-X86就是采用cisc(Complex Instruction Set Computer,复杂指令架构计算机)架构的处理器.大多数CPU厂商(如AMD,Intel)生产的就是这种处理器.与采用RISC(Reduced.,精简指令架构计算机)架构的PowerPC(如苹果电脑)不同.在CISC处理器中,程序的各条指令是按顺序串行执行的,每条指令中的各个操作也是按顺序串行执行的。顺序执行的优点是控制简单,但计算机各部分的利用率不高,执行速度慢。诸如IA-32、x86-32、x86-64都是属于x86架构的。如Intel的32位服务器Xeon(至强)处理器系列、AMD的全系列,还有VIA的全系列处理器产品都属于x86架构的。同时只有兼容x86架构的处理器才能够运行微软的Windows操作系统,这就是为什么换芯前的苹果电脑始终无法运行Windows的原因。同时的确有很多电影动画都已经开始用Quadro渲染-NVidia发布的Gelato是一款由行业标准图形硬件提供加速,并具备电影和电视制作专业人士所需的全套特性的终帧电影渲染器。Gelato的设计目标是通过实现离线式电影级渲染领域史无前例的速度、精确度和性能,彻底改革数字电影制作。借助全球最先进的电影着色语言和NVIDIA Quadro专业图形硬件,Gelato可实现最高品质的数字效果和动画。可以看出图形渲染基本都已经交给GPU处理了,就像搞清视频一样,高端的CPU才能勉强流畅播放的搞清视频,而低端GPU已经可以完全独立处理。最为经典的CPU是不能处理图像的,如DOS等早期操作系统都不支持图形界面,而致使基于x86架构的CPU对于图形的处理能力非常有限。这也是为什么会有GPU产生的原应-CPU不能独立处理图形,特别是3D渲染,GPU的性能和效率要大大高于CPU。在一般意义看来效率低下和不能是一回事,要不然CPU也不需要发展了,我们可以用8086作现在能做的几乎所有事情。CPU:不用给我介绍什么是CISC什么是RISC这些我知道的不比你少我只是不明白POWER PC如何就不能称呼位CPU了-NVidia发布的Gelato是一款由行业标准图形硬件提供加速.你引用的很好可这是Gelato宣传词汇实际上根本没人用因为Gelato所谓的GPU渲染器有太多的效果完成不了了自己去问问做三维的朋友就可以了这个问题上我也不想多说什么了做过或者正在做三维动画的人都知道我们所说的最终渲染是靠什么来渲的在DOS时代的CPU如何就不能惊醒三维渲染了呢那时候连GPU都没有显卡连最基本的2D加速现实能力都还欠缺可是DOS时代有多少经典的3D游戏呢DOOM重返德军总部太多太多了无一例外都是使用CPU渲染的即使现在流行的CS在视频选项里依然保留着一个software渲染模式也是靠纯粹的CPU渲染GPU:可是你却把x86片面的理解为一个指令集,可见你对于计算机的基本概念的理解还并不十分深刻。我只承认基于x86架构的处理器为正统的CPU,其他所谓的CPU已经由于各种用途而专一化,失去了CPU最初的意义。DOS时代的游戏也是要图形卡提供支持的,也就是早期使用的PCI图形加速卡,没有图形卡计算机是不能显示彩色画面的。这说明CPU还是不能够单独完成3D渲染,同时80486以前的CPU是不具备浮点处理能力的。而且DOS时代的3D游戏都是假3D,视角不能变换,只是将图像渲染得更有立体感,最多不过是2.5D而已。而且制做三维动画并不能说明什么,我觉得只有制作制作三维动画软件的人才知道最终渲染靠的是什么。如今的三维渲染CPU起到的只能是起到辅助的左右,将多个CPU并联后严格意义上讲就不能算作CPU了,CPU原意为中央处理单元,而多个CPU并联就已经失去了中央这一概念,而将多个CPU并联来渲染图像,其功能上已经变成了GPU-图形处理单元。CPU:8086只能用作处理整数,而浮点运算需要指定的运算单元。而POWER PC已近加入了很多经典CPU-基于X86架构所不具有的特性,如加入的3D运算特性,是否还能称其为CPU已经很不好说了显然是你根本分不清楚X86是什么我只不过告诉你X86是个于POWER PC完全不同的体系我说它是指令集有什么错误么X86本来就说的指令集我还真不知道你把它理解成什么我看是你对计算机的理解不深刻不知道是哪个老师告诉你只有基于X86的是正统CPUCPU这个概念和名称比X86出现早得多X86不过是CPU中的一个体系而已CPU本身就不存在什么用途专一化的问题用途专一化的是DSPCPU本身就代表着通用性你玩过DOS时代的3D游戏么如果没有的话就不要在这里说什么2.5D假3D了里面的多边形和贴图都是假的么谁说不具备浮点单元就不能计算3D画面DOS时代的PC用图形卡根本不具备3D处理能力所有的图像处理工作都是由CPU处理完成显卡唯一的工作就是把CPU处理完成的数字图形数据转换成可输出的数字或者模拟信号而已话说回来当今的CS一样有software渲染模式完全借助CPU渲染你给解释一下别你觉得你去问过么或者你去做过么不用多CPU并联就一路CPU一样可以完成3D渲染我还真是头一次听说当今的3D渲染CPU只是起到辅助作用的高论siggraph年会的参赛作品每年都有无数是个人靠自己的PC的那颗单路CPU渲染完成获得大奖的再说多路多路CPU并联就是GPU了?更是闻所未闻的高论暂且不说多路CPU并联并不都是去做3D渲染任务即使是去做3D渲染其计算过程也与GPU的完全不同如何就是GPU呢GPU:x86显然不是一个指令集那么简单的,而是基于Intel处理器经典设计结构的CPU系列。如果x86和Power PC真的仅仅是一个指令集的差距,那么软件兼容性的问题就非常好解决了,所以可以说它们的架构是完全不同的。多边形和贴图严格说只能算是2D性能,真正的3D游戏要求视角可以旋转,需要进行大量的矩阵变换,而早期甚至今天的CPU的不能胜任的。同时这也很明显是个DOS时代游戏所无法达到了。CS的Software渲染模式也并不是完全借助CPU完成,而是让CPU也加入3D元算,从而使得低端显卡也可以较为流畅的运行游戏,只是一种解决放案而已。GPU:回到定义上看就可以看出CPU(Central Processing Unit)又叫中央处理器,其主要功能是进行运算和逻辑运算,内部结构大概可以分为控制单元、算术逻辑单元和存储单元等几个部分。因此CPU进行的都是简单的算术运算和逻辑运算,而3D运算是要依靠软件来实现3D中的矩阵变换的。而GPU则将这些继承为内部指令,提高了运算效率,同时如今的CPU也加强了这一方面,如AMD著名的3D NOW!指令集。以计算方式有所不同,但计算过程都是一样的,都是基于空间变换的基本公式和物理定律来完成的。这已是为什么CPU被称作软加速,而GPU被称作硬加速。用作渲染的CPU都对3D处理作了强化,已经有很多和GPU相同的结构,可以说是CPU和GPU的结合体,普通的桌面CPU由于要依靠软件实现3D渲染,效率低下而是不适宜作3D处理的。试想一个集成了全部3D指令的CPU我们是否还能叫它CPU呢?CPU:X86根本就是指令集的名称只不过经产被借用来描述intle开发的基于X86指令集的CPU而已或者说是基于X86指令集处理器的简称-X86处理器多边形和贴图严格说只能算是2D性能呵呵我建议你好好阅读有关介绍3D相关知识的文献POWER PC和X86指令集处理器根本是不同体系一个CISC一个RISCCS的software根本就是纯粹CPU渲染而非什么借助你装一块根本没有3D处理能力的显卡上去一样可以跑GPU:不用看什么文献,写这些文献的人可能也并不会很清楚这个问题。这本来就是一个非常简单的数学问题在平面上只能绘制平面图形,而至于通过空间旋转变换才能实现2D到3D的过渡。3DMark中有完全用CPU渲染的测试画面满是锯齿、支离破碎、不到FPS不到1的画面速度。CPU由于要依靠软件实现的渲染图像,其效率必然是极为低下的。CPU:你到现在还不明白用CPU做渲染和用GPU的区别用CPU做渲染跑的根本是X86指令(以X86指令集CPU为例)而不是你所谓的GPU的3D指令即使现在部分厂商开始研究如何通过GPU强大的理论浮点能力辅助专业软件进行最终渲染这些GPU跑的也不是OpenGL或者D3D指令了GPU:SSE指令集中已经对于多媒体运算作了很多优化,特别是即将发布的SSE4指令集,将对图形渲染提供进一步优化。而完全依靠x86指令其运算速度会慢得不可想象的(严格的说就是不可能的,效率低下和不可能是一回事)。而二者最终都是通过进行矩阵变换来实现3D渲染的,其最为基本的指令不过就是那几个数学公式而已。CPU要依靠软件来实现进一步的渲染操作,这部分工作是和GPU类似的,二者并没有本质的区别。CPU:呵呵写3D图形理论书籍的人竟然被你认为不清楚这些问题空间转换呵呵那些3D模型都是假的么3DMARK说了半天你还是只能认知到游戏用图形渲染这个层面CPU渲染某些类型的3D图形是效率低下的而专业图形渲染器支持的功能和效果只能靠CPU完成就是因为CPU的高通用性只要你能写出这样的shader程序CPU就能完成你要的3D效果而GPU不高的通用性决定了在这些领域它根本不能完成这些工作一个能完成而且只能靠它完成而一个是不能完成所以说在这个领域根本谈不上CPU是效率低下的而且最后回到问题的原点CPU是否能处理三维图形呢显然答案已经有了GPU:写3D图形处理的人是在技术层面谈论问题,而恰好这一个数学问题。他们对于数学的理解不一定非常正确。只有通过有立体感和3D是两个不同的概念,即2.5D和3D的区别。只有立体感而没能透过3D旋转的图形,我们还是只能看到他的两个维度,而从线形空间的角度上说,是2.5维的。我举3DMark的例子不过是为了说明,全部依靠CPU完整实事渲染是不可能的(在重复一遍效率低下和不可能是一回事)CPU的高通用性是建立在完善的软件基础上的,如果没用软件,CPU不过只能做二进制的简单运算而已,或者说CPU只具备软通用性,没有相应的软件CPU就无能为力了。GPU的运算依赖软件的程度要低,即GPU具备更强的硬通用性,这也是它具有高效率的原因。对于CPU能否渲染三维图形的问题,我的回答是不能效率低下和不能是一回事。CPU:写3D图形处理的人是在技术层面谈论问题,而恰好这一个数学问题。他们对于数学的理解不一定非常正确你见过哪个3D图形理论书籍的人的数学知识是欠缺的我觉得你的对三维的理解本身就是错误的我也再重复一遍你还是只能理解到游戏用3D图形渲染这个层面而已任何硬件脱离软件谈论都没有实际意义GPU没有软件支持你认为它能做什么你竟然认为GPU具有更强的硬通用性这个词实在是新鲜你创造的么GPU才是最需要有软件优化去优化而达到更高性能的硬件稍微看看那些优化版驱动或者特定游戏的优化就知道以及对应API的更新没有一个不是说明GPU的通用性差DX7时代GPU根本不具备可编程能力通用性几乎为0DX8时代稍微改进也仅限于图形应用领域DX9时代开始在其它方面有所实际意义的拓展DX10时代开始这种研究和宣传即使如此GPU的通用性依然远不及CPU从设计目的就知道看来你对图形渲染的认识太肤浅了我早已说过专业领域的三维图形渲染是GPU根本不能完成的只有靠CPU既然GPU完成不了有什么资格谈论CPU效率是低下的呢既然你能得出这么荒谬的结论我看也没什么好说的了你大可以给pixar或者ILM去写信告诉他们用CPU渲染出的包括玩具总动员星球大战在内的电影是不可能的你也大可以给所有的三维工作者写信告诉他们放弃自己的职业吧用自己的机器里单路或双路CPU是不能做三维渲染的GPU:数学可没有你想的那么简单,做3D图形理论并不需要对数学有很深的理解,只需要熟练运用其中的公式就可以了。维度的概念就是来自于

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论