tildearrow / kwin-lowlatency

archived - X11 full-screen unredirection and lots'a settings for KWin
373 stars 10 forks source link

Micro-Stuttering since last update #70

Open StarrKiss opened 4 years ago

StarrKiss commented 4 years ago

Ever since the last update (that was on the AUR) there has been micro-stutter all across the operating system, from full-screening windows to all sorts of other animations. This is espiecally noticeable in things like Youtube. To test this out, I tried installing kwin (Non low-latency) and it doesn't have the micro-stutters. Until this issue is fixed, I am going to stick with normal kwin, despite its horrendous animation curve.

tildearrow commented 4 years ago

Are you sure you updated to 5.18.4-2?

StarrKiss commented 4 years ago

Yes, absolutely. It's worth noting that the version of the NORMAL Kwin that is in my package manager (Manjaro) is 5.18.3

tildearrow commented 4 years ago

Are you using multiple monitors?

Can you report the output of dbus org.kde.KWin /KWin supportInformation, and the values in System Settings > Display and Monitor > Compositor?

RPGHiro commented 4 years ago

Just to be sure check your systemsetting's compositor settings if you see any strange toggles towards the bottom which might have something to do with it.

StarrKiss commented 4 years ago

@tildearrow Information is here: https://pastebin.com/LcT7SQqZ

image

RPGHiro commented 4 years ago

@StarrKiss Try setting NeverGonnaGiveYouUp=true under [Compositing] in your kwinrc.

tildearrow commented 4 years ago

Hmmm.... looks like you are using the Intel driver.

KWin-lowlatency uses the "horrible hack" to wait for VSync on Intel cards. This can lead to stutter if it does not work well.

Can you try SGI video sync instead? (note: if it causes hangs please tell me because I know it might)

tildearrow commented 4 years ago

@RPGHiro That variable is only for the April Fools' version of KWin-lowlatency.

The author is using the latest version without the jokes.

luminoso commented 4 years ago

I'm also experiencing this.

Installed versions:

$ sudo dnf list installed | grep kwin
kf5-kwindowsystem.x86_64                          5.68.0-1.fc31                                          @copr:copr.fedorainfracloud.org:zawertun:kde           
kwin-lowlatency.x86_64                            5.18.4-1.fc31                                          @copr:copr.fedorainfracloud.org:zawertun:kde           
kwin-lowlatency-common.x86_64                     5.18.4-1.fc31                                          @copr:copr.fedorainfracloud.org:zawertun:kde           
kwin-lowlatency-libs.x86_64                       5.18.4-1.fc31                                          @copr:copr.fedorainfracloud.org:zawertun:kde           
kwin-lowlatency-wayland.x86_64                    5.18.4-1.fc31                                          @copr:copr.fedorainfracloud.org:zawertun:kde   
$ sudo dnf list installed | grep mesa
[sudo] password for gjc: 
mesa-dri-drivers.i686                             19.2.8-1.fc31                                          @updates                                               
mesa-dri-drivers.x86_64                           19.2.8-1.fc31                                          @updates                                               
mesa-filesystem.i686                              19.2.8-1.fc31                                          @updates                                               
mesa-filesystem.x86_64                            19.2.8-1.fc31                                          @updates                                               
mesa-libEGL.i686                                  19.2.8-1.fc31                                          @updates                                               
mesa-libEGL.x86_64                                19.2.8-1.fc31                                          @updates                                               
mesa-libGL.i686                                   19.2.8-1.fc31                                          @updates                                               
mesa-libGL.x86_64                                 19.2.8-1.fc31                                          @updates                                               
mesa-libGLU.x86_64                                9.0.1-1.fc31                                           @anaconda                                              
mesa-libOSMesa.i686                               19.2.8-1.fc31                                          @updates                                               
mesa-libOSMesa.x86_64                             19.2.8-1.fc31                                          @updates                                               
mesa-libgbm.i686                                  19.2.8-1.fc31                                          @updates                                               
mesa-libgbm.x86_64                                19.2.8-1.fc31                                          @updates                                               
mesa-libglapi.i686                                19.2.8-1.fc31                                          @updates                                               
mesa-libglapi.x86_64                              19.2.8-1.fc31                                          @updates                                               
mesa-libxatracker.x86_64                          19.2.8-1.fc31                                          @updates                                               
mesa-vulkan-drivers.i686                          19.2.8-1.fc31                                          @updates                                               
mesa-vulkan-drivers.x86_64                        19.2.8-1.fc31                                          @updates  

qdbus org.kde.KWin /KWin supportInformation: here

The effect is observable when recorded with OBS Studio: youtube

SGI video sync does not solve the issue

Confirmed no issues with vanilla kwin

tildearrow commented 4 years ago

@luminoso Please open System Settings and go to Display and Monitor > Compositor. If there is an option called "Enough of this torment already!", then it means you are using the April Fools' version of KWin-lowlatency. You may want to enable that option for now, until @ZaWertun updates the Fedora build (I just contacted him about this).

luminoso commented 4 years ago

oh. lol. long long April Fools for me aahha. Sorry for polluting this issue 😅 :man_facepalming: :man_facepalming: :man_facepalming:

ZaWertun commented 4 years ago

Sorry for that. I just created new build: https://copr.fedorainfracloud.org/coprs/zawertun/kde/build/1330605/.

StarrKiss commented 4 years ago

Once the rest of the KDE frameworks on Manjaro updated to match Kwin-Low Latency, it fixed the stuttering issues for me. So this issue can be closed, unless anyone else still has these issues.

markg85 commented 4 years ago

I'm not sure if i should respond in here or open a new topic. Guess i'm going for a post in here now :)

So, ever since a few months my pc became horrendously sluggish when it comes to animations or scrolling when (all of the below):

  1. i'm using a dual-screen setup
  2. Have 1 of the two screens run a full screen youtube video (in chrome)
  3. Browse other sites on my other monitor, in chrome too.

That was with the default KWin. So i remembered this interesting project and wanted to give this a shot. As it aims to solve issues i find particular painful in the default KWin (like compositing blocking on your whole desktop if one of your displays has a fullscreen application running). Seriously, that breaks a smooth workflow. Anyhow, this project comes to the rescue there :)

Here i do have a question though. I don't find the checkboxes very clear for kwin-lowlatency when it comes to compositing. They read: [] Allow application to block compositing [] Suspend compositing for full screen windows

Which order do i need to pick to suspend compositing just for the full screen window and not for other windows? Should i tick both options?

Surprisingly installing kwin-lowlatency doesn't fix my problem at all! Here's my 'supportInformation' output: https://p.sc2.nl/khWDs Of importance is that i'm using AMD Ryzen 5 2400G with it's build in vega GPU and have been doing happily so on the same setup for about a year or so.

I did investigate a little deeper. It turns out that if i disable vsync (the supportInformation output is with it disabled) then it seems to work fine. I obviously prefer to have vsync turned on due to tearing crap creeping up with it being off.

Lastly, as i'm on ryzen (and the open source AMDGPU driver) and as this happend seemingly randomly (not during a KDE update that i know of), it could very well be an issue in the GPU driver side. I just don't know.

Is there anything you folks can suggest me to try? Or anything kwin-lowlatency can do for me here?

Cheers, Mark

tildearrow commented 4 years ago

@markg85

Here i do have a question though. I don't find the checkboxes very clear for kwin-lowlatency when it comes to compositing. They read: [] Allow application to block compositing [] Suspend compositing for full screen windows

Which order do i need to pick to suspend compositing just for the full screen window and not for other windows? Should i tick both options?

"Allow applications to block compositing" is vanilla KWin's method of implementing compositor bypass. Not all apps support it and SDL bugs out and likes disabling compositing even if windowed. You should tick the "Suspend compositing for full-screen windows" option, and probably untick the other one.

I am so sorry to mention this, but KWin-lowlatency has problems with multiple monitors. See #7. I am planning on possibly integrating subdiff's compositing rework, however.