Chromium 开发者发布RenderingNG项目优化结果

Chromium 开发者揭晓 最近 RenderingNG 项目的第一个结果 (8 年前发布)旨在持续工作以提高 Chrome 的性能、可靠性和可扩展性。

RenderingNG 项目中实施的技术彻底改变了合成方法 并允许自适应地使用不同的技术来优化与页面各个部分相关的 GPU 和 CPU 上的计算,同时考虑到分辨率和屏幕刷新率等特性,以及对高级图形 API 的支持。系统,例如 Vulkan、D3D12 和 Metal。

在实现性能提升的实现方法中,GPU 侧不同像素的光栅化操作的并行化以及不同 CPU 内核上处理程序的更主动分离(JavaScript 执行、页面滚动处理、视频和图像解码、主动内容渲染)进行评分。

主动并行化的限制因素是 CPU 负载的增加,这体现在温度的升高和能耗的增加上, 因此,重要的是要在性能和能耗之间实现最佳平衡. 例如,当使用电池供电时,您可以牺牲渲染速度,但不能牺牲单独线程中的滚动处理,因为用户会注意到界面响应速度的降低。

例如,与 Chrome 94 相比,Chrome 93 版本中添加的优化导致页面延迟减少了 8%,电池寿命增加了 0,5%。 根据 Chrome 用户群的规模,这些数字在全球范围内转化为每天可节省超过 1.400 年的 CPU 时间。 与前一年的版本相比,现代 Chrome 渲染图形的速度提高了 150% 以上,并且在问题硬件上出现 GPU 驱动程序故障的可能性降低了 6 倍。

作为优化的例子,提到了主动使用GPU纹理缓存和渲染部分网页的结果,以及在渲染时只考虑用户可见的页面区域(没有意义)呈现被其他内容覆盖的页面部分)。

RenderingNG 的一个重要元素也是渲染页面不同部分时的性能隔离例如,隔离与在 iframe 中显示广告、呈现动画、播放音频和视频、滚动内容和执行 JavaScript 相关的计算。

在实施的优化技术中,提到了以下几点:

  • Chrome 94 具有 CompositeAfterPaint 引擎,该引擎组成网页的单独呈现部分并动态扩展 GPU 负载。 根据遥测采集得到的用户数据,应用新的合成系统可以将滚动延迟降低到8%,用户交互响应速度提高3%,渲染速度提高3%将 GPU 内存消耗降低 3%,并将电池寿命延长 0,5%。
  • GPU光栅: GPU 一侧的光栅化机制,它在 2020 年被纳入所有平台,并允许将 MotionMark 测试的通过速度平均提高 37%,与 HTML 相关的类别加速 150%。
  • 布局NG: 是对旨在提高可靠性和可预测性的页面元素设计算法的全面审查。 该项目预计将于今年到达用户手中。
  • BlinkNG - 重构和清理 Blink 引擎,将渲染操作划分为单独的阶段,以提高缓存效率并简化延迟渲染,同时考虑到窗口中对象的可见性。
  • 将位移控制器、动画和图像解码传输到单独的线程。 该项目自 2011 年开始开发,今年已经实现了将动画 CSS 转换和 SVG 动画移动到单独的流中的可能性。
  • 视频NG: 它是一个高效可靠的引擎,用于在网页上播放视频。 今年,实现了以 4K 分辨率显示受保护内容的功能。 之前添加了 HDR 支持。
  • 显示: 将光栅化和渲染过程分开,将浏览器界面的渲染与页面内容的渲染分开。

数据来源: https://blog.chromium.org


发表您的评论

您的电子邮件地址将不会被发表。 必填字段标有 *

*

*

  1. 负责资料:AB Internet Networks 2008 SL
  2. 数据用途:控制垃圾邮件,注释管理。
  3. 合法性:您的同意
  4. 数据通讯:除非有法律义务,否则不会将数据传达给第三方。
  5. 数据存储:Occentus Networks(EU)托管的数据库
  6. 权利:您可以随时限制,恢复和删除您的信息。