本文主要是介绍chromium gpu 硬件加速 compositing,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
转载请注明出处 http://blog.csdn.net/typename powered by miechalzhao@gmail.com
前言:
在传统浏览器网页渲染实现方案中,网页完全依赖CPU的能力去渲染网页(软件渲染简介:网页生成一张bitmap丢给CPU去绘制),然而一台机器的CPU不仅仅提供给网页,CPU还需要处理其他的事务,响应除网页以外的动作。
那么这种效率可想而知,性能会打大折扣,尤其在配置较低的机型表现得更明显。当前的硬件能力已经将更多渲染任务交由GPU去处理,那么开发者更多的需要关心实现的渲染性能以及是否省电,这两个点在移动设备上更加突出。那么在浏览器上使用GPU来进行硬件加速合成网页显得更为重要。
硬件加速的优点:
1) 通过GPU进行合成网页层比CPU更快并且性能更好。
2)对于一些已经在GPU中的内容可以减少不必要的高代价回读(readbacks), 比如:WebGL,Canvas2D,Video加速。
3) 充分利用现在的设备能力,让GPU和CPU并行工作创建高效的图形管道(pipeline)。
既然硬件加速有这么好的优点,我们必须得充分的利用GPU。chromium 当中有个渲染的机制叫”CC“(chrome compositor)使用硬件加速网页合成。我们先来看下为什么需要有"CC”. 下面是一个网页的展示例子:
当只有一个pixel buffer时需要对所有的元素进行更新,然而我们看到上图上下两部分是各自独立的,如果其中一个更新,另外一个是不需要随着变化。
上图中的Game/equipment有重叠部分如果有各自的pixel buffer
这篇关于chromium gpu 硬件加速 compositing的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!