[Development] Using DMA instead of SHM in non OpenGL apps (Linux/Wayland)

Eduardo Hopperdietzel ehopperdietzel at gmail.com
Fri Aug 18 21:17:35 CEST 2023


Hi David,

That's a very good point I hadn't thought about. I will create a testing
Wayland client benchmark and measure the time it takes for QPainer to
perform different drawing operations using both SHM and DMA. I'll also test
buffer resizing and measure the overall (client/compositor) performance by
counting the number of frame callbacks (FPS) returned by different
compositors.

To ensure the benchmark provides a representative performance evaluation
for Qt, I would appreciate it if you could clarify the following doubts:

1. Does Qt respect the wl_surface frame callbacks sent by the compositor,
or does it simply draw as many frames as it can?
2. When using SHM, does Qt reuse the same buffer on a wl_surface if it
receives a wl_buffer release event before a wl_surface frame callback? And
does it use more than one otherwise?
3. If DMA was implemented, I suppose double buffering would be mandatory,
or should I consider triple buffering or more?

Cheers,
Eduardo Hopperdietzel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.qt-project.org/pipermail/development/attachments/20230818/eceedcbf/attachment.htm>


More information about the Development mailing list