Skip to content
This repository has been archived by the owner on Apr 29, 2023. It is now read-only.

Micro-Stuttering since last update #70

Open
StarrKiss opened this issue Apr 2, 2020 · 15 comments
Open

Micro-Stuttering since last update #70

StarrKiss opened this issue Apr 2, 2020 · 15 comments

Comments

@StarrKiss
Copy link

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
Copy link
Owner

Are you sure you updated to 5.18.4-2?

@StarrKiss
Copy link
Author

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
Copy link
Owner

tildearrow commented Apr 2, 2020

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
Copy link

RPGHiro commented Apr 2, 2020

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
Copy link
Author

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

image

@RPGHiro
Copy link

RPGHiro commented Apr 3, 2020

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

@tildearrow
Copy link
Owner

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
Copy link
Owner

tildearrow commented Apr 3, 2020

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

The author is using the latest version without the jokes.

@luminoso
Copy link

luminoso commented Apr 7, 2020

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
Copy link
Owner

@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
Copy link

luminoso commented Apr 7, 2020

oh. lol. long long April Fools for me aahha. Sorry for polluting this issue 😅 🤦‍♂️ 🤦‍♂️ 🤦‍♂️

@ZaWertun
Copy link

ZaWertun commented Apr 8, 2020

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

@StarrKiss
Copy link
Author

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
Copy link
Contributor

markg85 commented Apr 24, 2020

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
Copy link
Owner

@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.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants