|
GPGPU 其实是一个过时的技术,这个技术是建立在GPU 可编程管线的基础上,借助于OpenGL 或者其他编程接口编程的一种技术。
流计算是一类计算,通用处理器也可以做,但是专用处理器会做得更好,这和DSP 比较接近。
图形学计算中,其实问题比较集中,2D 3D 的图形计算,都有其算法的特点,可以参考GPU Gems 系列,这个系列与其说是写GPU 的结构,不如说是写图形算法,通过图形算法来解释nVidia 的GPU 结构特点,Gems 1,2,3 是对GPU 架构有兴趣的人,必须收藏的三本书。不仅仅是nVidia 的GPU,其他厂商的GPU 设计,包括流处理器设计,也是基本遵循算法的要求的。
通用计算,从某种意义上说,就是十八般武艺样样都知道,样样都不通的,习惯了用MSVC 编程的人,往往意识不到他的代码对于CPU 的理论峰值,只有很小一部分的比重,Intel 投入了极大的精力优化ICC,但是仍然无法改变通用处理器固有的问题,未来的Larrabee 仍然背负着X86 的负担而不能彻底解放。
现在的GPU CPU 走到了一个可以交叉的路口,GPU 投入了比较大的精力做通用计算,CPU 则通过many core 来挑战GPU 的市场,未来前景如何,很难预测。 |
|