QtWebengine 5.7.1 的性能非常慢

Posted

技术标签:

【中文标题】QtWebengine 5.7.1 的性能非常慢【英文标题】:Very slow performance with QtWebengine 5.7.1 【发布时间】:2018-07-23 11:02:51 【问题描述】:

我正在使用 qtwebengine 5.7.1,但我在 arm microcontroller 上的性能非常缓慢。即使我尝试在 eglfs 指令之后使用命令行命令启用硬件加速(即./myBrowser --platform eglfs ...commands):

--qt-flag ignore-gpu-blacklist --qt-flag enable-gpu-rasterization --qt-flag enable-native-gpu-memory-buffers --qt-flag num-raster-threads=4

或者:

QTWEBENGINE_CHROMIUM_FLAGS="--enable-gpu-rasterization;etc.." mybrowser

似乎什么都没有改变...有什么我遗漏的吗?我尝试在https://browserbench.org/MotionMark/ 上执行一些基准测试,但我总是收到相同的结果。 最后但并非最不重要的一点是,如何在 webengine 上打开 chrome://gpu' 页面?为什么我打开'chromium://gpu'也打不开设置页面?

任何帮助将不胜感激!

【问题讨论】:

【参考方案1】:

您无法打开任何设置页面,因为这些页面属于 Chromium/Chrome 浏览器应用程序,而不是底层 WebEngine。

第一件事:您尝试过使用 Qt 5.11 吗?它带有更新的 Chromium 代码库,这可能会影响性能。

其次,您如何确定它的执行速度很慢?您是否对类似软件(即另一个浏览器)进行了测量,以确保该声明不只是简化为“微控制器功能不足以运行成熟的浏览器”?您甚至可以尝试为该微控制器构建 chrome/chromium 并直接查看它的性能(然后您可以访问它的配置并检查它是否真的有任何区别)。如果 Chromium/Chrome 本身性能更好,这是一个 Qt(WebEngine) 错误,我认为需要修复。在这种情况下联系 Qt。

如果这些选项没有帮助,我会联系 Chrome/Chromium 开发人员以查看是否可以做任何事情,或者询问 Qt(尽管如果问题在于 Chrome 网络引擎代码,Qt 开发人员将只能帮助一点点)。

【讨论】:

当我尝试加载一个页面时,我遇到了与 Qt 5.11 相同的问题,它非常慢,并且一些网页报告我的浏览器已过期。 @rafael 您可以通过设置另一个用户代理(我相信)摆脱更新报告,但加载缓慢是有问题的。我确实希望这是您正在测试的发布/优化版本,而不是调试版本。我仍然强烈建议在您的芯片上尝试 Chromium,看看是否会遇到同样的问题。如果是这种情况,您需要修复该问题或完全寻找其他解决方案。

以上是关于QtWebengine 5.7.1 的性能非常慢的主要内容,如果未能解决你的问题,请参考以下文章

lucene 中的高光性能非常慢

Azure 突触中的外部表性能非常慢

非常慢的 MySQL 读取性能

React Native Expo App 性能非常慢

c++ Windows 调试性能与 linux 相比非常慢

大表 (EF) 上的插入性能非常慢