我有一个 Qt5
应用程序,它使用 Qwt
库来绘制一些轨迹,具有图形缩放功能,以及一些其他简单的 Qt 小部件,例如 QLabel
、QPushButton
、QScrollBar
、QFrame
等。
应用程序在 Linux 上运行。
Linux 内核是 3.10.17。
发行版是 Ubuntu 14.04.4 LTS(可信)。
Qt 版本是 5.2.1。
我试图运行指定平台 eglfs
的应用程序(据我所知,它应该直接在 Linux 帧缓冲区上工作)而不是默认的 xcb
(这需要 X 服务器)。
但是我无法让它工作(这篇文章中描述了问题:"EGL Error : could not create the EGL surface: error 0x300b" on i.MX6 when running Qt5 application with -platform eglfs)。
我的问题是:
如果我成功了,在 CPU 负载方面,eglfs
是否会比 xcb
有显着的性能提升?
最佳答案
我没有看到 eglfs 或 Qt 的 xcb 平台之间的巨大差异,甚至 xcb 有时更流畅。例如,xcb 中的鼠标移动非常流畅,eglfs 中则不然。 但是,如果您使用 QGlPainter 而不是 QPainter 并相应地使用 QGlWidget 而不是 QWidget,将会有一个巨大的改进。
此外,QtQuick2 与 eglfs 配合得很好,它在我们的 IMX6-Rex 板上非常流畅和高质量。
关于c++ - iMX6 上的 Qt5 : performance advantage on running on platform eglfs vs xcb,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41169194/