c++ - QtWebengine 5.7.1 性能非常低

标签 c++ qt arm qtwebengine

我正在使用 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' 也打不开任何设置页面?

非常感谢任何帮助!

最佳答案

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

首先要做的是:您是否尝试过 Qt 5.11?它带有更新的 Chromium 代码库,这可能会影响性能。

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

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

关于c++ - QtWebengine 5.7.1 性能非常低,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51477275/

相关文章:

c++ - 如何验证条件变量是否已初始化?

c++ - 无法从 Windows 中的 pclvisualizer 中删除点云,尽管它在 Linux 中有效

qt - Google OAuth 始终显示同意屏幕

c++ - FPGA - 使用 C/C++ 测量 CPU 延迟

c++ - 从 'FILE* {aka _IO_FILE*}' 到 'int' 的无效转换

c++ - Qt QTableView - 'Nothing selected' 信号

c - STM32如何获取上次复位状态

ARM架构的Linux交叉编译

c++ - 我无法从 QMetaObject 获取方法,方法偏移量和计数相等

C++:模板类的Typedef