技术开发 频道

Photoshop with CUDA?

  【IT168 评论】CUDA 是 Compute Unified Device Architecture “统一计算构架” 的简写,很多人都认为Photoshop cs4支持native的cuda 是错误的.

  诚然,与OpenCL 一样,CUDA 也是一种通用计算技术,目前这种技术是由nV发布并且借由发挥n卡内部GPU运算能力的一种API接口. M$也说了要在dx11里增加面向通用计算方面的内容. 举个很简单的例子,多年以前(dx未统一显卡通用图形api之前的时代) 很多图形卡面向游戏加速都拥有自己的接口,很典型的例子就是voodoo 时代. 后来因为霸主m$的介入规范了其借口形式,大大的方便了游戏开发人员可用一种通用开发格式来面向各种显卡进行加速,而所有显卡自觉地遵守dx规范(不遵守是不行滴)

  硬件的发展要靠硬件厂商的发展,厂商要发展不可能总去遵循某个既定的法则,在竞争激烈的市场他们要最大化拓展他们产品的应用范围,要尽力帮助用户找到升级硬件的理由. 所以CUDA 以及ati 的brook+ 一样,都是厂商寻求发展的必然产物,与此必然相同的就是…他们最终也必然走向接口的统一,那么答案肯定就是Microsoft 的dx series 及工业图形老大OpenGL. 虽然CUDA 是一个新兴且很有活力的技术,但我坚信其一定会随着更规范更open的时代到来后发生更多转变.

  所以我认为,现阶段cuda 只是一个演示用的接口,演示如何让显卡GPU做更多的计算任务,从而开放给任何希望开发各种基于高速运算需求应用的用户或开发商,纵然其已经可以用于各种应用之中,可是其带有很明显的硬件规范需求,其必然限制了软件开发商的积极性(与nv合作的除外) 所以一种更通用更加开放更有标准的Bridge桥 接口的出生就是必然的情况,正如上面所说的这极有可能还是m$一统江湖,且这也是microsoft 最爱干的事情之一.

  CUDA 是要告诉大家其实GPU可以做的事情可以更多. (以我”浅薄的技术水平”认为,多年以前其实GPU就可以应用于通用计算,伯克利大学某人很早就写了一个for geforce256卡的一个通用计算演示,但是因为当年显卡可以拓展的应用还有很多与游戏机图像也有巨大的差距,同时又与CPU计算能力拉不开距离,加上很多构架不统一,复杂程度更高等等一系列问题所以GPU通用计算直到今天才真正成为热点) 但是我坚信以后的dx 将会包容更多的非图形统一接口,正如他的directSound directInput. (说不定某个时候就出来了 directPhyx 物理接口:D )

  回到Photoshop这个主题上来,adobe 作为软件厂商还是很聪明的,在合作没有进入到一定深度前其不可能会让其软件的通用性降低或者搞成如游戏机那样的某硬件独占. 其还是使用更大的接口–新版的OpenGL 的指令集来对其应用来进行加速,因为这样可以实现兼容更多的显卡来进行图形加速,况且以目前的应用来看,所有的应用基本都在GL可以加速的API范围内,所以能够通用的实现加速何必cuda呢? 当然不排除以后伴随着adobe 与nv or ati 的深入合作会推出某个专有插件来如实现图形的真实3D世界膨胀和扭曲碰撞喷溅等等…. 当然Premiere 的视频编码应用可以很好的使用上cuda or brook+ ,至于支持谁,,,还是看”潜规则”吧:D

  最后,无论是OpenCL/DX/CUDA/Brook/Stream 他们之间是高级包含低级接口的关系还是独立或者统一的API还看厂商的发展,占有率,ms的态度等等这一切.

0
相关文章