Adobe Flash GPU加速的发布与展望

2009-10-22 作者: NVIDIA 来源: e-works

关键字: NVIDIA Adobe Flash GPU 

  首先让我们回顾一下本周的一条重要信息:

  截至目前为止,网络上的视频绝大部分都是以Flash的方式在浏览器上展现出来的,包括Youtube、Youku等都采用的是这样的方式。可以说,Flash目前就是最流行的网络视频输出方式,也可以说是一种格式。Flash是Adobe公司倾心打造的一款产品,如果要论市场占有率的话,恐怕Flash在Adobe公司的所有产品中市场占有率是最高的。目前基 于Web的Flash Player的最新版本是Flash 10.0,该版本有一个特别重要的更新点就是加入了GPU(图形处理器)加速的支持,也就是所谓的硬件加速。该功能在Flash 10.0中默认呈开启状态,在网页的Flash中点击右键——设置就可以看到这一点。

  使用硬件加速有什么好处呢?大家知道,CPU虽然发展的很快,但处理能力是有限的,特别是对视频的处理能力,显然不如GPU强大。而且,从计算能力 方面,GPU所采用的精简指令集架构执行效率也远远要比x86 CPU所采用的复杂指令集1效率要高的多。使用GPU来处理Flash,不仅仅可以有效的提升性能,而且可以大幅度降低CPU的资源占用率,节省对CPU 资源的开支以让CPU可以做更多其他的事情。

  但是,在Flash 10.0中,Flash的处理并不是完全依靠GPU,甚至很大一部分处理仍然是依靠CPU来完成的(如上图)。我们可以看到,Web Flash的处理过程主要分为三个部分:目标视频处理——合成处理——屏幕渲染。在Flash 10.0中,目标视频处理与合成处理这两大部分仍然依靠CPU来完成,GPU只是完成了最后一个步骤——屏幕渲染。显然,这还是很大程度上依赖 CPU,GPU的性能并没有得到完全的利用。

  虽然以目前CPU的强大性能处理网页上的Flash不在话下,但是一些性能比较低的CPU在多开几个播放中的Flash窗口之后,就会出现CPU满 负载,视频停顿的现象(网络环境畅通的情况下)。同时,面对高清版网络视频逐渐流行,例如全球最大的视频网站Youtube加入了高清版视频在线播 放,CPU处理起来就会渐渐感到力不从心,所以最好的办法就是将这一切都交给GPU来处理。可喜的是,Adobe在下一个版本的Flash也就是 Flash 10.1中就会完全支持GPU,,GPU将完全替代CPU的角色,全程负责Flash的处理以及渲染(如上图)。

  目前,Adobe已经与全球视觉计算的领袖NVIDIA展开了合作,共同开发下一代Flash。根据调查,在线视频已经成为互联网的第三大应用,超 过了电子邮件的使用频率(互联网诞生初期电子邮件是最多的应用)。我们可以看到,随着GPU对Flash的全程支持以及高速网络的逐渐普及,直接在浏览器 中流畅的播放高清视频将不再是梦想!

  注1:从Intel Pentium Pro(P6)之后,x86复杂指令集的CPU也开始采用内核精简指令集,但是在外围布置了从复杂指令集到精简指令集的译码电路动态译码方式,籍此提高CPU的性能,使复杂指令集CPU也有可能在1个时钟周期内运行一条甚至多条指令。

  编辑点评:

  本月初,对于定位自身为视觉计算领袖的NVIDIA又将是一个重要的时刻:Adobe Flash 10.1将采用GPU加速的模式以扩展自己的应用效率。众所周知,Adobe公司的产品及其市场地位在业界是无可替代的,就在您浏览本网页的同时,Adobe Flash可能就在为您默默的工作着。经过多年的发展,Adobe Flash的功能日渐强大,地位也越来越重要,甚至在许多知名网站的高清视频部分,Flash也提供了兼容性与效率俱佳的开发与应用环境。

  依照NVIDIA公司的理念,任何基于视觉的计算环境都应当有NVIDIA的GPU产品涉足,Adobe Flash也不例外,这一次,Adobe和NVIDIA联手为我们带来的,是基于GPU并行计算开发的Adobe Flash 10.1。在此前,CPU一直在Adobe Flash中扮演核心乃至是唯一的角色,而如今GPU为我们带来了改变。

  毋庸讳言,对于Adobe Flash所承担的工作绝大多数都是非常适合于并行开发的,这也是NVIDIA方面如此积极的推进与Adobe的合作原因之一。在这个对计算能力极为渴求,而传统的计算核心又无法提供高效解决方案的情况下,将适合于并行开发的内容分离出来,交由更有效率的硬件进行处理,这也是过去数十年来一再重复的“合久必分,分久必合”宿命的再次循环,至于这次循环能持续多久,最终结果如何,无人能够定论。但NVIDIA方面在这一领域积极的引领变革,倾注全力进行开发无疑是值得尊敬的。

  Adobe Flash 10.1诞生后,我们所关心的问题更在于其实质性的变化与效率。例如:可以展现极高并行处理能力的GPU,相较于传统的CPU是否能展现同样高的能耗比?Adobe Flash 10.1究竟采用何种标准进行开发,NVIDIA的CUDA还是开放标准的Open CL又或者是其他?尽管这项技术由NVIDIA大力推动,但Adobe公司是否会对NVIDIA的GPU表现出特殊的关照,还是对所有符合标准的GPU一视同仁?

  但不管如何,至少在现在,NVIDIA是唯一一家向我们展现出努力拓展现有GPU在非传统3D技术领域中应用的GPU设计公司,仅此便足以证明NVIDIA当前在这一区域的领袖地位。一家企业能够获得业界尊敬的核心价值也就在于此:过去,如今的成就和对未来的远见。



责任编辑:熊东旭