Hi everyone !
First : I’m very grateful to NVIDIA for bringing for about 2 decades the best GPUs and providing us with constant & fast Linux support. Been using Nvidia since the post Voodoo 2 days… Riva TNT I think.
Now : I know this subject has probably been constantly brought up for a decade but…
Could an NVIDIA developer step in and tell us the situation on the desktop performance when using the Nvidia proprietary driver with the KDE Desktop (KWin/Plasma) ?
Here’s my experience which is apparently widespread. Please tell me if I’m wrong. Of course I’m referring to a Plasma 5 desktop with composition by it was already mostly true in Plasma 4 as well.
- by default, tearing occurs
- by default, kwin animations are jerky
- by default, CPU usage is very high
To work around those, one can either
- enable triple buffering
- set GL_YIELD=USLEEP
- force the (full or not) composition pipeline
When applying 1) or 2), kwin animations are very inconsistent. From butter smooth to temporarily jerky. It feels “OK” but far from as good as it could be.
–> as a reference, I get a constant 60 FPS in all conditions with a super slow Intel HD 3000 or a more recent Intel HD 530… Nvidia GPU gets below that all the time. <–
When applying 3), KWin animations / desktop effects are significantly more consistent. Some desktop effects that were very slow before are OK now (i.e. : moving the window decoration to the top or side of the screen to maximize it) but I still get (less) frequent occasional stutter. I have absolutely none with an Intel HD Graphics for instance.
Still, the result I get with 3) is the best I got with the Nvidia driver. However it raises different issues like slowing down a lot the startup of KDE (15-20 seconds) when the Force(Full)CompositionPipieline is set in xorg.conf ; or displaying a black desktop (still active though) or when there is apparently some inconsistency with the KDE display settings, starting Steam with this option enabled freeze the screen (still active though…).
Last but not least, ForceFullCompositionPipeline is supposed to add input latency, cf. https://wiki.archlinux.org/index.php/Talk:NVIDIA/Troubleshooting
And also the following test fails : http://www.vsynctester.com/
So well… I know the main KWin developer kinda decided to stop making specific fixes for NVIDIA and also doesn’t test it himself anymore because it’s difficult for him to work with closed-source drivers, because in the past when he did it he created regressions elsewhere (and also because NVIDIA doesn’t support gbm for Wayland and the focus in now on Wayland). He’s doing a hell of a great job nonetheless and so do you.
My question is : what is the official situation about all this ? Are KDE users doomed ? I really want to continue buying from NVIDIA as in the past 20 years but it’s getting really frustrating ! A casual “joe” user just wouldn’t care and would probably just drop KDE or NVIDIA, which would be a real pity.
[Apart from that, games performance is stellar ! But of course I use my desktop way more than I play games :)
PS : reference : this KDE bug report : https://bugs.kde.org/show_bug.cgi?id=322060
Bug 322060 - Synced swapping on double buffered nvidia GPUs cause high CPU load
Reported in 2013.