CUDA很不错啊
http://www.nvidia.cn/object/cuda_home_cn.html
http://cuda.csdn.net/
扩展现有PC变成HPC,据称成本是传统CPU HPC的1/1000。Apple最近又搞出来OpenCL支持,那巨大的并行啊...
还听说UC Berkeley曾经有个项目是在GPU上JIT,比CPU快20倍。(忘记哪里看到的)
NV这个HPC大小和PC一样,功耗几百瓦。不知道和UC Berkeley那个项目有没有关系。
[ 本帖最后由 prolj 于 2008-12-29 15:30 编辑 ]
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
你现在的技术是通杀了,从嵌入式到HPC,无处不在。
只是了解了解。
NV说虽然OpenCL比CUDA更“低级”,但是效率上的差距会因为编译器的优化相差不大,但是CUDA相比OpenCL更容易使用。
俺关心的数据流相关性分析,数据流分析的核心问题。
这个方面的话题很合适在这个论坛讨论.
LZ把东西简要的整理一下直接贴上来就可以讨论了,连接看起来不太方便,而且无法要定位讨论的重点.
先从Cell说起,Cell是异构多核的,性能好,主频高啊。
Intel又仿制了一个Larrabee显卡,只是工艺还是90纳米的,但是Arch上和Cell差不多。
再说Intel的Atom,如果说几十上百个Atom核的多核U,现在来说还为时过早,况且工艺,封装...芯片组?都是问题,关键是Arch上不是更有利于实现的。
CUDA倒是进一步的发展(个人觉得),NV有个计算板,可以插在PC上的。CUDA的GPGPU的核心有N多...主频很高,速度本来就不错,再加上N多核心,并行的话,计算问题可以很快解决。GPU不光可以浮点计算,定点是浮点的一个子集。CUDA没有Cache好像是,大规模并行计算用Cache不太考谱,为了增加这方面的性能取而代之的是DDR3显存,NV的说法是对于大规模计算来讲Cache不是那么重要。并行机来讲,Cache的设计意义不大,因为计算需要的大量数据Cache不一定装的下,而且并行计算需要的数据不一定是连续的,比如Cary机就不用Cache。Intel的U怎么样?芯片上大量的面积用来做Cache了,这样作为不要Cache的GPU来讲就可以容纳更多的核来进行计算。
从Cell开始,我就觉得异构多核好啊。CUDA还是用现有的PC结构,现有的软件(OS)仍然能跑,CPU主要跑OS的,要是有啥计算,无论是浮点还是定点,如果安排合适,GPGPU可以很快计算出结果。
关键的优势就在于CUDA更容易实现,价格低的离谱(和传统HPC相比),可以用更小的面积集成更多的核(GPGPU这个概念一开始是AMD的流处理器提出的,只不过AMD的流处理(ATI显卡)要用汇编,不方便),功耗目前是几百瓦,也已经低的离谱了~~~
[ 本帖最后由 prolj 于 2008-12-31 10:41 编辑 ]
算低的离谱了? 是跟哪个做比较的?能否说说?
跟传统HPC比啊,独立显卡玩儿游戏PC的整机功耗也几百瓦了 我觉得比起来机房里面需要空调甚至水冷的机器已经很离谱了。
而且NV自己也一直强调 性能/功耗 比。
怎么现在都在用gpu来搭计算架构了,对gpu没什么了解,只知道其一般是浮点运算,还无法真正理解它的优势所在。
这是现存在的一些说法和观点(本人认为仅是某个角度的说法,并不排斥大家各自的观点):
使用显示芯片来进行运算工作,和使用 CPU 相比,主要有几个好处:
1. 显示芯片通常具有更大的内存带宽。例如,NVIDIA 的 GeForce 8800GTX 具有超过 50GB/s 的内存带宽,而目前高阶 CPU 的内存带宽则在 10GB/s 左右。
2. 显示芯片具有更大量的执行单元。例如 GeForce 8800GTX 具有 128 个 "stream processors",频率为 1.35GHz。CPU 频率通常较高,但是执行单元的数目则要少得多。
3. 和高阶 CPU 相比,显卡的价格较为低廉。例如目前一张 GeForce 8800GT 包括 512MB 内存的价格,和一颗 2.4GHz 四核心 CPU 的价格相若。
当然,使用显示芯片也有它的一些缺点:
1. 显示芯片的运算单元数量很多,因此对于不能高度并行化的工作,所能带来的帮助就不大。
2. 显示芯片目前通常只支持 32 bits 浮点数,且多半不能完全支持 IEEE 754 规格, 有些运算的精确度可能较低。目前许多显示芯片并没有分开的整数运算单元,因此整数运算的效率较差。
3. 显示芯片通常不具有分支预测等复杂的流程控制单元,因此对于具有高度分支的程序,效率会比较差。
4. 目前 GPGPU 的程序模型仍不成熟,也还没有公认的标准。例如 NVIDIA 和 AMD/ATI 就有各自不同的程序模型。
......