QT widget based UI rendering slow on qt5 when ported from qt4
-
I am not an expert. So, IMHO, just continue stays on Qt4. Qt5 does not given any advantages then for QtWidgets.
UPD:
I have found documentation mention about 'linuxfb' && 'eglfs' backends here. Where says that for QtWidgets used the software rendering.
Also I have found mention about X11 && 'xcb' backend here. Where it is unclear what of render is used for QtWidgets (I hope that sometihng hardware/accelerated 2D).
And I have not found any mention about 'directfb' backend on Qt5 && Linux.
-
Widgets are using the rasteriser backend, so if you are thinking GPU, no they are not hardware accelerated.
-
Widgets are using the rasteriser backend, so if you are thinking GPU, no they are not hardware accelerated.
@SGaist Not looking for any acceleration. Im still trying to figure out how come qt5 renders slow the same gui which is rendred fast with qt4 on same device?
-
Please watch for current discussion in mailing-list.
-
Please watch for current discussion in mailing-list.
@kuzulis I have read the mailing list chain. I am interested in learning what is it that was in QT4 which is not in QT5 anymore from rendering perspective. With QT4 I used to run my app with -qws. ofcourse QT5 does not have qws. Is there anyway we can patch QT5 to enable similar features which were provided with qws in QT4.
If there is no workaround options with me would be either to migrate the app to qtquick which is huge effort or rollback to QT4. Is there any other option?
-
Please read that mailing chain up to end (to today). There says that to the Qt5 are added one feature to enable the acceleration with QtWidgets && X11, using the QT_XCB_NATIVE_PAINTING env. variable. You can try it.
-
Please read that mailing chain up to end (to today). There says that to the Qt5 are added one feature to enable the acceleration with QtWidgets && X11, using the QT_XCB_NATIVE_PAINTING env. variable. You can try it.
@kuzulis Are you talking about hardware acceleration? if yes I can't use it as my hardware does not have GPU! Hope you are following my query from the beginning!
-
Widgets are using the rasteriser backend, so if you are thinking GPU, no they are not hardware accelerated.
I came across one slide recently about QT presemtation. Does this mean that Qwidget can be accelerated as well?
-
@linuxsnail said in QT widget based UI rendering slow on qt5 when ported from qt4:
Does this mean that Qwidget can be accelerated as well?
Seems no.
-
IIRC, DirectFB provided some hardware acceleration depending on the graphic chip you have at your disposal but don't expect NVIDIA Titan X acceleration performances.
-
IIRC, DirectFB provided some hardware acceleration depending on the graphic chip you have at your disposal but don't expect NVIDIA Titan X acceleration performances.
@SGaist Can I use EGLFS for QWidgets without GPU support? Do you think it can have better performance over LinuxFB?
-
IIRC, DirectFB provided some hardware acceleration depending on the graphic chip you have at your disposal but don't expect NVIDIA Titan X acceleration performances.
@SGaist I am still struggling with this topic, is there any possibility of adding software acceleration for qwidgets ? I'm just wondering what made it render faster on qt 4.8.1? even when we use qt4.8.7 it seems slow like qt5.
For qt4.8.1 and 4.8.7 my compile configurations are similar.
-
If you are seeing a slowdown between Qt 4.8.1 and Qt 4.8.7, you should compare the code of both backend to see what's going on.
-
If you are seeing a slowdown between Qt 4.8.1 and Qt 4.8.7, you should compare the code of both backend to see what's going on.
@SGaist Sure that's what I am doing right now but on a separate note is it possible to use any software acceleration with QTWidgets?
-
What software acceleration do you have in mind ?
-
@SGaist i just want to understand can opengl or svg libraries be used without gpu or any other backend like directfb can improve performance rendering apart from linuxfb
-
You can use mesa for software based OpenGL rendering (don't expect hight performance).
SVG is not a screen rendering backend.
IIRC DirectFB should be faster than plain LinuxFB.
-
You can use mesa for software based OpenGL rendering (don't expect hight performance).
SVG is not a screen rendering backend.
IIRC DirectFB should be faster than plain LinuxFB.
@SGaist Ok I believe qt 4 has qt-gfx driver which provides some sort of software acceleration when used with linux fb, any idea qt5 has any such driver which I can use?
-
You have the complete list of backend available here.