编程学习网 > IT圈内 > 通过遮挡检测技术,谷歌浏览器启动速度竟能提升25.8%
2021
12-11

通过遮挡检测技术,谷歌浏览器启动速度竟能提升25.8%

2020年10月份谷歌浏览器推出86正式版,该版本附带名为遮挡检测(Occlusion)的改进用来测试提升浏览器性能。该功能主要适用于Windows 10和Windows 11系统 ,  据谷歌测试通过遮挡检测技术能够显著减少硬件资源占用。

根据谷歌统计该技术让谷歌浏览器启动速度提升25.8%,GPU内存使用量减少3.1%,绘制渲染器帧数减少20.4%当然带来如此出色的性能改进自然也是有弊端的:很多后台标签页会被自动冻结,导致每次切换都需要重新加载。


遮挡检测技术是什么原理:

众所周知谷歌浏览器占用的内存资料比较高,如果开启比较多的标签页那会导致系统很多内存资源被浏览器占用。为此谷歌此前已经利用自动冻结技术对不活动的标签页进行冻结,所谓冻结其实就是直接释放标签页占用的资源。

当用户重新切换到这个标签页时那就需要重新调用内存、显存、渲染器、网络对网页内容重新下载并进行绘制等。本次推出遮挡检测技术与自动冻结类似但更激进,如果标签页在其他软件窗口的背后那就说明标签页不再使用中。

所以谷歌在检测到标签页被其他窗口遮挡时那就进行冻结并释放硬件资源,等到用户切换回来时再重新获取资源。当然也不是标签页被遮挡后就会被立即冻结,谷歌通过一系列复杂的参数计算会评估和衡量哪些标签页可以冻结。

注:如果不想使用此功能,请转到chrome://flags/#calculate-native-win-occlusion 将其修改为Disabled重启

遮挡检测带来的性能提升:

Chrome 86版在2020年10月向所有 Windows 用户推出,经过一年多的测试和数据收集谷歌已经发布评测结果。统计评测显示采用遮挡检测技术后谷歌浏览器启动速度提高8.5%~25.8% , GPU显示内存使用量减少 3.1% 左右。

整体绘制渲染器帧数减少20.4%,遇到渲染器崩溃的用户减少4.5%,首次输入延迟改善3%,内容绘制提高6.7%启动和首次内容绘制性能得到提升的原因是有时候浏览器启动时,需要恢复用户上次关闭的一或多个浏览器窗口。

而现在启动进行恢复时可能有一个或多个窗口被遮挡,被遮挡的窗口不会被加载所以启动时压根不需要考虑它们。注:根据谷歌说明以上所有数据均根据真实世界用户使用数据进行匿名聚合而来,非实验数据也不涉及个人隐私。



扫码二维码 获取免费视频学习资料

Python编程学习

查 看2022高级编程视频教程免费获取