POPPUR爱换

 找回密码
 注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

搜索
楼主: Elvis
打印 上一主题 下一主题

您认为CUDA技术最终能让我们电脑发展走向GPGPU计算时代吗?[NVIDIA达人挑选赛]

[复制链接]
41#
发表于 2009-7-6 12:34 | 只看该作者
本帖最后由 weihua8206 于 2009-7-7 00:19 编辑
毫无疑问 CUDA或者GPGPU是带给业界的一次计算的革命.
非常出色的并行计算能力,这是带给我们最明显的特点.

当然,请不要混淆概念,目前的GPU架构来说是不可能取代CPU的.
CUDA或者GPGPU来说不是全部.

并不是任 ...
玉清 发表于 2009-7-5 22:37


对方辩友请注意,入门不难与实际应用是完全不同的概念:汇编语言入门比VB还简单呢,你怎么不用汇编直接写程序呢??数学入门也很容易(2岁小孩都知道1+1=2),可没见数学家遍地都是吧?

代码晦涩复杂、程序难以移植及维护才是CUDA的致命伤!!对方辩友避而不谈这个问题,极力把话题转移到“CUDA能编出程序来,而且运算要快一些”这个论点上。那告诉对方辩友:直接用硬件汇编指令编出来的程序是最高效的,而且也能编出**oworld来。对方辩友是不是认为编写WINDOWS也是理所当然的应该用汇编了呢?

不正视CUDA的弊端,空谈其“能用”、“速度快”是没有意义的!
回复

使用道具 举报

42#
发表于 2009-7-6 14:01 | 只看该作者
77# iverlin
CUDA 目前可以用在大约30%的计算上,其中性能比相同价格CPU系统 强的情况,只占30%的40%,大幅度超过相同价格CPU 系统的,大约是30%中的20%,也就是说,以CUDA 为例,对于约6% 的计算负载,有比较显著的加速效果,代价则是开发复杂度的提升,开发成本的上升,后期代码维护的复杂度高。
基于以上原因,大规模向CUDA 移植的商业计算软件,比如FLUENT,NASTRAN,基本还没有,少数软件的局部模块试水,并不能改变应用的全局状况。
回复

使用道具 举报

43#
发表于 2009-7-6 14:42 | 只看该作者
80# iverlin
Larrabee 如果不面向桌面和个人计算,就不会做GPU了,直接就是个many core 产品,现在就可以上市了。作为主流显卡定位的GPU产品,你感觉它离普通消费者还有多少距离?
CUDA 进入大学已经是很早之前的事情了,UIUC 今年已经第三年开GPGPU 的课程,有些学校开了CUDA 已经停开了,国内来说,都是跟着走,现在用还没用起来,推广就更不必说了。
我强调的始终是实用性,脱离实用性,盲目做CUDA 的移植,问题会非常多。
07年开始,华尔街就有不少公司巨资研究CUDA 的实用性,期望通过CUDA 来提高风险模拟的效率,有一家投行和nVidia 合作,投入1000万美金,在08年一无所获,最终尴尬收场,当时的结论是CUDA 在这个方向的效能优势不明显,而开发周期太长,不实用。
忽视开发的复杂度,忽视CUDA 算法适应性的问题,忽视CUDA 计算精度的缺陷,盲目投入CUDA 的开发,最终只能买个教训。年轻学生头脑发热问题不大,决策者头脑发热,就只能自食其果了。
回复

使用道具 举报

44#
发表于 2009-7-6 16:02 | 只看该作者
83# iverlin
给你复制一点WIKI,你看看Larrabee 到底是什么。主流一块显卡的价格,昂贵吗?
LarrabeeIntel正在研发中的显卡,预计会在2008年第三季推出样本,而会在2009年正式发布。与现时的显卡不同,它是建基于x86架构,内有多个称为IA的核心,数量亦可以随意增加或减少(12-32个),官方报称浮点性能可达到TeraFLOPS级别。此外,还有矢量处理单元,用作支持SIMD。它与中央处理器相似,有一个缓存架构。核心亦支援一套新的矢量指令集,用作矢量内存、整数和浮点计算。[1]Larrabee可以同时支援DirectXOpenGL。由于是通用核心,亦可以支援物理加速。[2]2008年8月,Intel称核心数量是8的倍数,总数最少是8个,最多32个。图形API方面,它支援主流的DirectXOpenGL,Intel亦会推出自家的标准。目的是充分发挥多X86核心的性能。浮点运算方面,支援IEEE标准的单双精度。显示内存接口与ATIRadeon R600相似,探用环形总线,每个方向是512-bit。[3]各X86核心亦使用此总线互相通讯。针对影像方面,Larrabee核心内有专门的VPU元件。[4]

Larrabee 从设计最初,就明确了作为GPU 产品摊薄成本的战略,这注定了它不是奢侈品,如果这个形势都认不清,谈CUDA 或者GPGPU,是不是有点不合适?
回复

使用道具 举报

45#
发表于 2009-7-6 18:36 | 只看该作者
86# iverlin
Larrabee 的显卡产品,特别是游戏显卡的价格,就是一块主流显卡的价格。
对于Intel 来说,Larrabee 就是第一个many core 的产品,通过显卡市场实现摊薄规模化,是否可以回收投资,并不是大的问题。
Larrabee 的主要研究基础就是80核,80核这样的项目又有什么回报呢?
回复

使用道具 举报

46#
发表于 2009-7-6 19:01 | 只看该作者
CUDA对于PS的效用在于大图片的图像缩放、移动、翻转、滤镜处理、图层样式等等实际操作,能获得比单纯CPU软加速快得多的效率。CPU处理A2大小的无损图片就已经力不从心了。请不要拿打开图片说事,300G内存 300G图片 ...
iverlin 发表于 2009-7-6 14:11


对方辩友一而再、再而三的举PHOTOSHOP的例子,拿LIGHTSCAPE的渲染来说事!

试问对方辩友,这些是通用软件么??这些图形应用本来就是应该用专业显卡,CUDA在这些软件上的应用丝毫不能说明其在科学运算方面是可用的!!只能说明作为专业显卡搭载CUDA是有所助益的!!

对方辩友作为图形设计人员的局限使其看不到在通用领域的程序员对CUDA的普遍不认同!!请对方辩友咨询下身边使用MATLAB、MAX-PLUS等通用软件的程序员,虚心听听大家对CUDA的看法,对方就会发现:在图形应用领域之外,至少目前,CUDA是远远落后于CT的,几乎没有程序员愿意使用它。
回复

使用道具 举报

47#
发表于 2009-7-6 19:34 | 只看该作者
“代码冗余很大、程序难以移植及维护”
不知道这位先生如何得出 这个结论的?
"汇编语言入门比VB还简单呢"同样请问 这个结论如何得出来的?
顺便说一些常识性问题的:CUDA里面同样具有PTX汇编.
Windows程式设 ...
玉清 发表于 2009-7-6 16:31


对方辩友显然没有过作为汇编程序员实际开发的经验。

扫盲:汇编语言是低级语言,一切高级语言都是基于低级语言的,在编译的时候都会按一定的规则转换成汇编语言。再由底层编译器译为机器码来执行。汇编语言可以直接对应机器码,由它转换为机器语言几乎是没有效能损耗的,但高级语言为了有利于结构化设计,其编译的代码必然会有冗余!

在简单指令集中,汇编语言代码种类很少,所以极易入门,但用其编写程序时却需要绞尽脑汁、一万行代码才能实现C语言中几百条代码的功能(当然了,这几百条代码用编译器编译出的代码可能两万行都不止,所以说汇编语言直接编程是执行效率最高的),而且移植难度极高,如果把一段X86的汇编代码移植到POWERMAC,几乎全部代码都需要重写,这是令人抓狂的!!

而CUDA提供给用户的界面,就像汇编语言一样晦涩:用户需要编写海量的代码来实现其它界面少量代码就能实现的功能。诚然、这些代码运行起来或许是高效的、快速的。但你是否考虑到程序员繁重的劳动了呢?这样即使一种盲目的自信,也是对程序员劳动的不尊重。

举几个例子说明:
1、一个MM中暑晕倒了,你是马上给她喝自来水,还是去给她泡功夫茶呢?功夫茶很好,一杯茶顶20杯自来水解渴,还提神、醒脑、养身。。。。但是等你泡完,中暑的MM已经渴死了!你极力推崇功夫茶,自己应该天天泡功夫茶喝,从来不喝水才对,为什么你不这样呢?“因为泡茶太费时间了,我还要工作、生活节奏很快……”

2、马上要上班了,你还没吃早点,给你两个选择:吃汉堡或者吃螃蟹,你怎么办?“螃蟹比汉堡好多了,但我只能吃汉堡。因为吃螃蟹太费时间了,等我吃完,上班时间早过了,老板会骂死我的。我生活节奏很快,不能这么耽误时间……”

对了,程序员们生活节奏也很快,能用几十行代码,一上午昨完的工作,你偏要推荐CUDA,让他工作一星期才能完成,他能支持你吗?能不反对CUDA么?
回复

使用道具 举报

48#
发表于 2009-7-6 22:20 | 只看该作者
很好的活动
回复

使用道具 举报

49#
发表于 2009-7-6 22:25 | 只看该作者
95# 玉清
GPGPU 编程,CT 之前,最容易上手的是BROOK,不过由于AMD 收购,ATI 已经基本放弃了在HPC 领域投入,声音小了很多。
CUDA 相对于BROOK+ CAL/CTM,效能相对可以做得好一些,而比单独使用CAL/CTM 又可以容易一些,更重要的是nVidia 在GPGPU 领域投入了太多的资金。
回复

使用道具 举报

50#
发表于 2009-7-6 23:31 | 只看该作者
本帖最后由 weihua8206 于 2009-7-7 00:29 编辑
看来您完全理解错误了,这些制图软件处理图像本来就是CPU做的事,显卡只是负责显示,比如专业显卡只能提高显示效果,在3D类软件上实现实时抗锯齿和物效等效果,
而不负责处理、渲染成像。但CUDA的介入让显卡能够 ...
iverlin 发表于 2009-7-6 20:29


请对方辩友不要为了辩论的结果而辩论,以一个专业图形设计人员的素质,你会不知道专业显卡在渲染上的加速作用么?“专业显卡只能提高显示效果”这种说辞实在太外行了。您说的是ISA时代的显卡么?那时的显卡确实只能提高显示效果(当然,那样的芯片也不能称作GPU)。

专业显卡之所以“专业”,并非显示效果有多好!实际上专业显卡就是为了特定软件设计了特定的指令集,供特定软件的程序员调用GPU进行3D及光影渲染运算。3DMAX之类的软件都是用CPU运算的么?对方辩友这样说实在有点误导观众的嫌疑了。

我再次强调,CUDA在图形设计软件上的应用丝毫不能说明GPGPU运算时代将要到来!相反的,类似的专业应用(注意,是专业应用,而非GPGPU所谓的“通用”运算)早就出现了,阁下难道没用过野猫7110么?那时候专业显卡就已经用来对3DMAX、lightscape、MAYA等软件进行渲染、成像以及光影动态运算的加速了!!

另外,请对方辩友正面回应我的观点,而不要用误导观众的方式来诡辩。我提出的事实是:在使用MATLAB等权威软件进行科学运算的程序员中,已经形成了一种共识,即:使用CUDA会使程序员工作量成倍增加,且难于移植和维护。如果CUDA真的如对方辩友所说的那样前途广阔、为何大家却不愿使用,而宁愿选择其它不使用GPGPU的方案呢?

在这里,我说MATLAB是通用科学计算的标志性软件,对方没有异议吧?在高等数学、有机化学、量子物理、气象分析等领域,MATLAB都是算法嵌入的主要编程工具。而对方辩友反复提到的PHOTOSHOP,能算得上通用运算软件么?一个图形处理工具而已,作为GPU的对外界面,如果CUDA对图形软件都起不到优化作用,那英伟达可以直接倒闭了!如果对方辩友认为PHOTOSHOP也是“通用计算软件”,那你用PHOTOSHOP算个平方根给我看看,或者用PHOTOSHOP给我求解个拉格朗日方程出来看看!
回复

使用道具 举报

51#
发表于 2009-7-6 23:47 | 只看该作者
看来您完全理解错误了,这些制图软件处理图像本来就是CPU做的事,显卡只是负责显示,比如专业显卡只能提高显示效果,在3D类软件上实现实时抗锯齿和物效等效果,
而不负责处理、渲染成像。但CUDA的介入让显卡能够 ...
iverlin 发表于 2009-7-6 20:29


偷换概念、理解错误……对方辩友的辩词之中充满了类似空洞的指责和攻击,却言之无物,举不出实例来证明我是错的!辩论技巧的运用也要结合事实来说话才行,否则辩论赛就变成咱们双方的“互相污蔑大奖赛”了。
回复

使用道具 举报

52#
发表于 2009-7-6 23:57 | 只看该作者
ps的加速并不是通过cuda实现的 amd的显卡一样的可以使用

目前cuda的应用并不充分 比较好的应用仅在physx硬件加速 而大多游戏开发 仅是面对的physx的接口,而不用直接面对cuda

在其他很多方面 cuda也是失败 ...
贵甲 发表于 2009-7-6 23:43


中立玩家们的客观评价是中肯的,相信大家也看到了,绝大多数中立的程序员、编程爱好者、甚至普通玩家,都对CUDA持否定态度,这是对方辩友以及英伟达都应该认真面对的。

另外,对方辩友提出的例证有疑点,在此提出几点疑问:

1、对方辩友有什么证据说明PHOTOSHOP CS中使用了CUDA技术?请举出有说服力的例子!
2、对方辩友声称CUDA技术使自己在渲染光影效果的时候速度大大提高,请问对方辩友使用的是什么软件?渲染的什么材质的图片?使用的又是什么显卡?与使用同样CPU+AMD同档次显卡来渲染相比快多少?另外,请提供原始素材给大家测试,以证明对方辩友的论据是站得住脚的!
回复

使用道具 举报

53#
发表于 2009-7-7 00:08 | 只看该作者
请问这句话该如何理解呢?
CUDA相对于以前的GPGPU开发环境来说,已经容易了非常多,GPU精粹2 这本书中有部分讲述了GeForce 6时代的GPGPU开发.
试想,假如没有CUDA,而仍然停留在 那远比CUDA开发复杂的GPGPU开发 ...
玉清 发表于 2009-7-6 22:18


perl语言也比汇编语言编程容易了非常多,但仍然被广大程序员所抛弃。因为其易用度还远远不够,写出来的程序代码像天书难于维护,比起C++、BASIC来说仍然很糟。

仅仅满足于BETTER是不可以的!因为对于“极度糟糕”来说,“better”也仅仅是“很糟糕”而已。
回复

使用道具 举报

54#
发表于 2009-7-7 06:15 | 只看该作者
专业卡都可以加速3DMAX渲染速度了?真是新闻了,3DMAX是纯CPU渲染软件,不熟悉不懂无可厚非,但是妄自下定论就不好了。

NVIDIA对全世界公布PS CS4支持CUDA加速,你给NV胆子撒得慌?你能否以你的论据击破 ...
iverlin 发表于 2009-7-7 01:24




你对全世界公布你爱周迅、李小璐、芙蓉姐姐等,所以她们就应该嫁给你了?(俺严重支持第三个嫁你 )这完全是你自己的一面之词!

对方辩友使用过专业图形工作站么?还是只用过1万人民币的“专业卡”?自己去查查好莱坞的特技制作人用的什么电脑再来“不懂装懂”吧?还纯CPU加速,笑话!(当然,好莱坞也不会用3dmax这种落后到不支持大多数图形加速卡的软件了。)
回复

使用道具 举报

55#
发表于 2009-7-7 06:20 | 只看该作者
专业卡都可以加速3DMAX渲染速度了?真是新闻了,3DMAX是纯CPU渲染软件,不熟悉不懂无可厚非,但是妄自下定论就不好了。

NVIDIA对全世界公布PS CS4支持CUDA加速,你给NV胆子撒得慌?你能否以你的论据击破 ...
iverlin 发表于 2009-7-7 01:24


再次提醒对方辩友:不要用空洞的人身攻击(天天说别人不懂,自己却半瓶子咣当什么都解释不清,我要告你诽谤了喔 )和NV的“公布”来搪塞问题!请你实际举例(PS的编程开发人员的证明、PS的源代码、PS处理图像使用N卡与A卡速度的对比等)来证明自己的论点,如果不能论证,请自觉承认你的错误。
回复

使用道具 举报

56#
发表于 2009-7-7 19:59 | 只看该作者
CUDA GPGPU 本身就是编程领域的话题,脱离了编程领域,CUDA 更没法讨论了。
回复

使用道具 举报

57#
发表于 2009-7-7 20:20 | 只看该作者
CUDA GPGPU 本身就是编程领域的话题,脱离了编程领域,CUDA 更没法讨论了。
回复

使用道具 举报

58#
发表于 2009-7-7 22:55 | 只看该作者
看来这个论题已经沦为编程领域的讨论了,这些我不太懂,我只是游戏和硬件玩家,对方将每一个问题都转移到编程上去,这个我真的答不出。相信论坛这里很多人也看不懂编程的东西,
不过玩显卡不需要懂编程的东西~ [smi ...
iverlin 发表于 2009-7-7 13:47


电脑终端玩家的一切应用都是基于软件的,而软件都是由程序员来编写的。试想,如果没有程序员编写基于X86的软件,你买电脑来干啥?如果没有人使用DIRECTX编写游戏,那现在的显卡可能还停留在巫毒时代(那样的话GTX285做出来也是废品了,没有程序基于它,玩家买它来干什么?)。所以我们说,CUDA如果要发展,必须要给程序员们足够便利的接口,如果程序员们都不敢用CUDA接口编写程序,那这个标准完全没有价值。如果想要绕过程序员,直接让玩家接受英伟达的GPGPU,那只有一个途径:兼容X86,让电脑插上显卡就不需要买CPU!这显然是英伟达远远做不到的,而且在遥远的未来即使做到了,也必然与CUDA无关(因为CUDA的架构是根本不兼容x86的)。
回复

使用道具 举报

59#
发表于 2009-7-7 23:37 | 只看该作者
117# arnew
我们不能直接使用Larrabee,不过可以把我们的程序给Intel ,由他们在Larrabee 上运行,并返回我们结果,还在用第一批流片的成果,最近一个月,应该用第二批流片的成果了,Intel 原计划9月向测试用户提供测试板,推迟到11月或者年底了,和CT beta 一起交付。
回复

使用道具 举报

60#
发表于 2009-7-8 20:30 | 只看该作者
CUDA 是NV 一个抛砖引玉的“概念”,一个并行化的编程模型(软/硬件),在一些计算密度极高的编程问题时可以发挥出极大的优势,例如设计到矩阵方面的运算,将一个大问题分解成N个相互独立的子问题,分别解决,如矩阵的 ...
tyro 发表于 2009-7-8 17:43


CUDA是一种傻瓜式的架构,硬件并不能判断自己应该做什么,这种马蜂窝式的并行运算在处理非重复性复杂运算时就力不从心了。而且其最高只能支持32位浮点数运算,做为浮点处理器,如此之低的精度是绝对无法令人忍受的(用它算个类星体红移,误差能有个几千万光年,换你是物理学家你敢用这种处理器么)所以,这个架构是不成功的,不能代表GPGPU未来的发展方向。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

广告投放或合作|网站地图|处罚通告|

GMT+8, 2024-5-7 04:41

Powered by Discuz! X3.4

© 2001-2017 POPPUR.

快速回复 返回顶部 返回列表