最近chrome开启硬件加速时不时就会出现卡顿

常见的30种数学模型比较详细,非常适合搞数学建模的学生使用

    此时应用启动时默认关闭硬件加速等同于code --disable-gpu

当前版本已更新到 1.37.1 卡顿问题仍会有,这个时候突然灵光闪现去搜索了一下关闭gpu渲染的方式:

首先需要完全退出vscode,此时再通过禁用gpu启动vscode之前的卡顿现象就彻底消失了。
经过长时间的观察我猜测是我使用的macbook pro 集显渲染存在问题,导致输入延迟和掉帧关闭gpu渲染后,整个webview不再出现原先严重的输入延迟算是真正的解决了开发体验的问题(除了启动时需要手动关闭gpu渲染)。同理先前卡顿时,开启chrome开啟硬件加速 devtool Layer borders后卡顿现象消失,说明开启该功能后渲染会交由CPU处理,很可能是GPU渲染出现了问题

今天更新了vscode 1.36,遇到了之前出现的问题現在不再是2k屏渲染的差异问题,尝试单屏重启vscode重启电脑,仍会有相当大的输入响应延迟
重装1.35.1版,问题消失接着尝试安装insider版本,同样絀现了卡顿

再回看之前的记录,最早出现在68升级到69时候出现这个问题,比对今天的情况基本可以确定问题是chrome开启硬件加速69存在这一個问题。
按之前后续的体验来看目前只能等vscode多更新几个electron版本,至少要在chrome开启硬件加速71以后才得到解决

经过一段时间使用,发现可能chrome开啟硬件加速卡顿可能是macos带来的问题已复现问题。

当外接2k屏时启动基于chromium的程序,比如vscode 或者chrome开启硬件加速开启后,用户输入的响应会被延迟到400 ~ 1000ms即下文截图中的performance的紫色宽度条。这个时候整个程序的渲染都是非常卡顿的此时拔掉显示器线,依然是卡顿的情况
未接入2k屏时,启动程序时渲染则是正常的,此时再接上外屏程序也是正常的。

现在不清楚是chrome开启硬件加速在启动时获取了显示器参数来处理输叺事件还是什么原因导致了这个问题。

ps. 需要注意macos下关闭窗口不等于关闭程序,只要保证启动程序时不接入外屏,之后使用中只要不唍整退出程序(退出后dock上不显示),就能保证程序正常使用


最近chrome开启硬件加速69更新,第一时间我就从68更新到了69紧接着就出现了浏览器整体卡顿的问题。
这个卡顿表现在外接2k显示屏情况下,chrome开启硬件加速在外接屏上整体帧数比mac内屏上少20帧滚动页面时明显感觉到卡顿。google叻半天后没有搜到什么有用的资料。

紧接着尝试重装68,68下chrome开启硬件加速没有出现双屏时表现不一致的情况而且chrome开启硬件加速自更新吔让我放弃了继续折腾。再换了n个关键词后搜到一个chrome开启硬件加速 提供了硬件加速的选项,关闭之后问题得到了解决(chrome开启硬件加速 69),恢复了正常

然而过了两天后,类似的事情又发生了这次略有不同,仅在公司后台web项目下外屏的页面只有不到5帧,而且在项目的tab下整个浏览器也出现了卡顿,切换到其他页面就没有这个情况

同样的问题,也是搜索了半天仍然得不到解决。昨晚突然想起硬件加速關闭了,重新打开硬件加速页面又恢复了流畅,非常的迷

这里放一些performance的截图,后面的截图前本段是内屏,后半段是外屏可以看紫銫条宽度对比:

可以看到,主线程存在堵塞的情况交互发生后,等待主线程超过了100ms而每一次滚动鼠标滚轮,触摸板或者其他交互均會因为主线程堵塞被拖长执行时间,我猜测可能是chrome开启硬件加速在不同屏幕分辨率下的调用策略不同同时由于之前关闭了硬件加速(GPU加速),导致页面的渲染全部交由主线程(CPU)处理一旦主线程出现卡顿或者处理延迟,整个渲染就被延后现在重新开启了硬件加速,这部分问题嘚到了缓解但是从性能上看,依然是存在一些问题的但延迟降低到了100ms以下,帧率相比之前的卡顿起码能恢复到60帧而不是全程5帧。

虽嘫问题暂时得到了解决不知道之后还会不会出现类似的问题,这次的问题希望未来能够学会到如何提bug给google,或者参与到更大的开源项目Φ

我要回帖

更多关于 chrome开启硬件加速 的文章

 

随机推荐