D23105: WIP: [platforms/x11] Cleanup GLX backend, revise compositing
Roman Gilg <[email protected]>
| Newsgroups | gmane.comp.kde.devel.kwin |
|---|---|
| Message-ID | <[email protected]> |
romangg added a comment. In D23105#525696 <https://phabricator.kde.org/D23105#525696>, @ekurzinger wrote: > Regarding the fallback to the composite timer when using the proprietary NVIDIA driver, while it doesn't really support anything equivalent to GLX_INTEL_swap_event, there is https://www.khronos.org/registry/OpenGL/extensions/NV/GLX_NV_delay_before_swap.txt which has the similar goal of reduced input latency. See the extension description for details, but essentially it allows the application to block until a specified time before the next swap. I'm not sure if that's exactly fits what KWin needs here, but maybe worth considering?. Thanks, the extension looks interesting. Although a delay timer could work as well and if we want reduce latency we need the timer for mesa drivers anyway. On the other other side this extension gives us somewhat a swap synchronized event to align the paint with. But this could be done as well with `__GL_MaxFramesAllowed = 1` and D23881 <https://phabricator.kde.org/D23881>. Also this extension would block, so we need to do something similar as in D23881 <https://phabricator.kde.org/D23881> with a separate thread. So in both cases we would need a thread, remaining question now is if there are other advantages with using this extension and not force `__GL_MaxFramesAllowed = 1`. > Also, I'd be able to test this patch on a PRIME (hybrid graphics) system if nobody has done so yet. Given that there have been synchronization-related issues there before, it's probably worth checking. > > However, the patch doesn't seem to apply cleanly to HEAD any longer. Would you be able to post a rebased version? All WIP ideas here have been transferred to a commit series also up for review at the moment. I just rebased it on master. You should be able to do a checkout of it from this diff: D23514 <https://phabricator.kde.org/D23514> To do that directly issue `arc patch D23514` in your local KWin repository. REPOSITORY R108 KWin REVISION DETAIL https://phabricator.kde.org/D23105 To: romangg, #kwin, fredrik Cc: ekurzinger, alexde, nicolasfella, alexeymin, kwin, LeGast00n, The-Feren-OS-Dev, sbergeron, jraleigh, fbampaloukas, GB_2, mkulinski, ragreen, jackyalcine, iodelay, crozbo, bwowk, ZrenBot, ngraham, himcesjf, lesliezhai, ali-mohamed, hardening, romangg, jensreuterberg, abetts, sebas, apol, mart