西西河

主题:【原创】【讨论】如此强大的图形芯片,我们可以挪作它用吗? -- Highway

共:💬24 🌺14
全看树展主题 · 分页首页 上页
/ 2
下页 末页
家园 【原创】【讨论】如此强大的图形芯片,我们可以挪作它用吗?

打开计算机的机箱,你可以看到里面密密麻麻各式各样的芯片。除了我们熟悉的CPU以外,还有专门处理声音的芯片,专门处理网络的芯片,专门负责IO的芯片(物理上看这些芯片很可能集成在了一起,放在南桥当中)等等。

点看全图

外链图片需谨慎,可能会被源头改

这其中呢,专门负责图形部分的芯片-GPU有些特殊,搞操作系统的人现在一般要将这个部分单列出去,因为这个部分有些“独立王国”的味道。它有自己的Firmware,有自己的On-board内存,有数以亿计的晶体管数量......从某种角度上说,他就是一个专门化的CPU。

点看全图

外链图片需谨慎,可能会被源头改

点看全图

外链图片需谨慎,可能会被源头改

最近几年,GPU技术的发展和更新比CPU还来的快速和猛烈,NVidia和ATI就好比Intel和AMD,骠着膀子干上了,杀得你死我活,不亦乐乎。其结果呢,就是GPU的整体水品达到了前所未有的高度,其复杂程度和技术含量比起最新的CPU来也是不遑承让。于是乎呢,就有“好事者”开始琢磨了---能不能让这样强大的GPU干点别的?

点看全图

外链图片需谨慎,可能会被源头改

事实上,GPU在浮点数的很多计算上效率非常之高,如果能将这种RAW POWER来作科学数值计算,那会是怎样一种情形呢?

于是有人做了这样一个研究。他们首先生成一个数量巨大的数组,里面填充以浮点数,然后让程序对这个数组进行排序。用微软的C++编写的程序,排序一把费时20秒左右。如果用Intel的编译器对Hyper thread结构再优化一下,时间可以降低到18秒左右。之后,他们做了些手脚,将这个程序包装成一个“游戏”,然后交给GPU去处理,结果GPU只花了2秒钟就将排序搞定。结果令人惊愕!

于是乎,人们开始惊呼“解放GPU,全面释放它们的能量!”。我想在其后一段时间,我们也许会看到更多的这方面的研究和报道。

OK,我们现在不妨纵观一下现在的计算机发展。我们是不是可以感觉到有这样两种看似截然相反的发展道路:

1)高度的集成 -- 现在的CPU恨不得把一切都包括近来。L2,L3 Cache拿进来了,Memory controller拿进来了,Intel很快还要将Video部分和电压控制部分拿进来。高度集成的好处就是体积小,能耗低,成本便宜,可靠性高。对于广大老百姓而言,这不是一个坏消息。

点看全图

外链图片需谨慎,可能会被源头改

2)高度的分化 -- 高端的用户想呢,正想办法把一切可能的负担从CPU上拿出去,用专门的芯片来完成特定的任务。比如高端的Video Card, Audio Card,RAID Controller,SCSI IO Card,High speed Ethernet Card等等。前两天还看到一个更有趣的“协处理器” -->两万美金一块浮点数协处理器,据称可以将计算机的浮点数处理能力提高10倍。

关键词(Tags): #CPU#GPU元宝推荐:四月一日,
家园 挪作他用的话,

首先是编译器和调试工具;

其次是兼容性问题。

我倒是觉得高度的分化是未来的方向。

家园 这年头,图卡比CPU都贵。我看他们应该在显卡里集成CPU

一个走集成,一个走专业化,这两个趋势,也算是出于商业考虑的结果吧。

大多数的用户,特别是企业办公所用,对计算机的要求是能用就好。集成度高一些,对企业来说,也可以省一笔费用。CPU厂商走这条路也是有道理,只是所有产品都这么干,就有点玄了。

想想数码相机也是这么一回事:一头是专业的单一功能的,一头是大众集成的多功能的。

家园 性能上去了可价格也上去了

老百姓还是痛苦啊...

家园 这个想法有创意

据说R520有3亿个晶体管,只用来玩3D游戏是可惜了点

家园 哈哈,不知能否如此

把LINUX包装成一个“游戏”,然后交给GPU去处理。一块底板上插几块卡,就变成了一个SERVER FARM了!

家园 现在GPGPU研究热得很啊

很多GP(General Purpose)问题进行改头换面,伪装成一个图形绘制问题,混进GPU里转几圈就OK了,效率大大的高。

家园 GPU只是在某些方面比CPU强,但显然不是CPU的替代品。

台湾Giga推出了一种主板,可以插4块Video Card,非常有趣。如果能让GPU干数值计算的话,这一下不是将性能又提高了N倍嘛!

点看全图

外链图片需谨慎,可能会被源头改

家园 我已经看见有人在用了

GPGPU在图像处理的性能上很强,主要优越性在于并行。一般CPU上的图像处理算法都是采用串行方式,一个个像素扫瞄过去,而GPGPU则同时处理多个像素,因此同样的操作下,GPGPU要快捷得多。

GPGPU用作data visualization 也是一个热点。

家园 在这一方面,ATI似乎更加积极一些。这里正好有篇报道,

讲述了ATI GPU在物理以及生物研究中的两个成功例子。

ATI practically kicked off its press event for the Radeon X1000 series with a physics demo running on a Radeon graphics card. Rich Heye, VP and GM of ATI's Desktop Business Unit, showed off a simulation of rolling ocean waves comparing physics performance on a CPU versus a GPU. The CPU-based version of the demo was slow and choppy, while the Radeon churned through the simulation well enough to make the waves flow, er, fluidly. The GPU, he proclaimed, is very good for physics work, and he threw out some impressive FLOPS numbers to accentuate the point. A Pentium 4 at 3GHz, he said, peaks out at 12 GFLOPS and has 5.96GB/s of memory bandwidth. By contrast, a Radeon X1800 XT can reach 83 GFLOPS and has 42GB/s of memory bandwidth.

This demonstration was more important as a statement of position and direction for ATI than anything else. NVIDIA has been rather enigmatic about any plans for physics processing, and has seemed to step out of AGEIA's way for the most part, welcoming the PhysX effort as another means of improving PC gaming. ATI is clearly ready and willing to take on AGEIA's PhysX card by using its GPUs for physics simulation, and the company believes that the more general programmability of its Shader Model 3.0 implementation in the Radeon X1000 series could make it a viable competitor there. There was talk of a CrossFire dual-GPU config in a split setup, with one GPU handling graphics and the other handling physics for certain games, and somebody present even suggested the possibility of a third GPU on a PCI card dedicated to physics processing. The folks from ATI seemed to like this suggestion.

另外一个例子:

...One of the most exciting was an implementation of the GROMACS library that's used for protein folding, as in Folding@Home. Although the GROMACS implementation wasn't yet optimized for the Radeon X1000 series and still used Pixel Shader 2.0b, the Radeon X1800 XT was already performing between 2.5 and 3.5 times faster than a Pentium 4 3GHz processor. The GeForce 7800 GTX didn't fare so well, achieving only about half the speed of the P4 3GHz. Houston offered a laundry list of things that GPGPU developers need from graphics chip makers, including better information about how to program the GPU and more direct access to the hardware.

家园 老轧认为把 GPU 当 CPU 用容易些,

还是直接用 RISC 更好? GPU 用来当 CPU 在技术方面自然是可行的, 理论上只要把原本要处理的信息包先 Encoding 成可让 GPU 处理的, 处理过后再 Decoding 回来就可以了. 关键在于有没有这个必要.

家园 GPU是现成的,如果在软件环境上给与一点帮助的话,我们

就能收获意想不到的“Bonus”。另外我们这个Bonus不影响我们PC的正常工作,算是“白捡”的。GPU算是CPU得特别助手,处理它擅长的计算,而不是将CPU取而代之。

如果用RISC,那问题麻烦了,整个计算机构架都变了,算是另起炉灶了。另外,RISC技术的更新替换远没有现在GPU来得快,出货量也没有办法和ATI,Nvidia这些厂商比,所以成本肯定也没有优势。

微软的Xbox 360的CPU很有特色,只打游戏有些可惜了,不知道微软会不会今后在那个平台上做些别的尝试。

家园 有道理. 那么应该搞个 CPU/GPU Load Balance S/W

GPU 闲着就欺负它...

家园 这几年有片siggraph的paper

在gpu上面实现了整套关系数据库的算法,其实我觉得这也是撑的,搞偏门啊。这两块处理器的结构不一样,所以在有些方面不容易通用罢了。

家园 别对ati期望太高

工作的关系,我正在做ati某款最新芯片上面的某些开发。结论是,这东西就两个优点,象素填充率搞,成本低,但是至于浮点数计算,至少我这里就发现了2个bug,而且某著名软件公司也正为这两个bug发愁不以。ati在浮点计算上的某些实现根本就是错的,而且这种错误在连续几代芯片上都保持着……

全看树展主题 · 分页首页 上页
/ 2
下页 末页


有趣有益,互惠互利;开阔视野,博采众长。
虚拟的网络,真实的人。天南地北客,相逢皆朋友

Copyright © cchere 西西河