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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.