KWin Compositing and GLX rework with Nvidia driver
Roman Gilg <[email protected]>
| Newsgroups | gmane.comp.kde.devel.kwin |
|---|---|
| Message-ID | <CAJcyoysjrX2pHtOwRGBc7LNqi0QAYoBjgm-gLejs4LWx_cimZw@mail.gmail.com> |
Hi Erik, I'm doing at the moment a rework of compositing pipeline and GLX backend. I'm following a rather radical approach in throwing away old cruft and streamlining the code: https://phabricator.kde.org/D23105 I want to simplify code drastically and for that have a primary code path of an event driven compositing loop reacting to vblank finish events because that's simple and it's how we do it in Wayland DRM backend as well. Only as fallback there is a timer if event driven synchronization with vblanks is not supported on the hardware I tested the current rework code now with Nvidia proprietary driver where synchronization is not supported, but it seems to work fine here with the fallback timer. Still, if there is an extension Nvidia uses for vblank notification that I don' know about, we could do the same as on Intel/AMD with GLX_INTEL_swap_event and synchronize the paint with the frame times. What I didn't test yet is an Optimus setup. Do you have such a test setup at hand from your previous work on KWin? Also general feedback on the rework would be great. Best would be to do this directly on the WIP Phab code review linked above. Cheers, Roman