Bug 463886 - the effect "Desktop Grid" is incredibly laggy
Summary: the effect "Desktop Grid" is incredibly laggy
Status: RESOLVED FIXED
Alias: None
Product: kwin
Classification: Plasma
Component: effects-desktop-grid (show other bugs)
Version: 5.26.5
Platform: Arch Linux Linux
: NOR normal
Target Milestone: ---
Assignee: KWin default assignee
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-01-05 16:22 UTC by e902
Modified: 2023-09-25 11:14 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In: 6.0


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description e902 2023-01-05 16:22:48 UTC
SUMMARY
***
NOTE: If you are reporting a crash, please try to attach a backtrace with debug symbols.
See https://community.kde.org/Guidelines_and_HOWTOs/Debugging/How_to_create_useful_crash_reports
***

On intel integrated gpu (i5-8250U with HD Graphics 620) the effect "Desktop Grid" is incredibly/laggy/slow/unresponsive when there are more than 4-5 windows present (I have 9 virtual desktops and it doesn't look like moving the windows between them changes anything, there can be one window on every desktop and it's still laggy).


STEPS TO REPRODUCE
1. Configure Desktop Grid effect in the following way:
 - desktop name alignment: disabled
 - grid layout mode: custom
 - windows layout: natural
 - number of rows: 3
 - show buttons to alter count of virtual desktops: true
 - add some shortcut to be able to trigger the effect
2. Open many windows (5+) on random desktops (doesnt matter if all of them are on a single desktop or any other ranngement, just the fact that they are open and will be visible in the preview)
3. trigger the effect using shortcut
4. the animation is incredibly choppy

OBSERVED RESULT

Animation is in low framerate (or appears to be)

EXPECTED RESULT

Animation should be smooth like it used to be on a kwin version from ~12 months ago

SOFTWARE/OS VERSIONS
Windows: 
macOS: 
Linux/KDE Plasma:  Arch Linux (Linux 6.1.2-arch1-1)
(available in About System)
KDE Plasma Version: 5.26.5
KDE Frameworks Version: 5.101.0
Qt Version: 5.15.7

ADDITIONAL INFORMATION

kwin_x11 --version
kwin 5.26.5
Comment 1 Nate Graham 2023-01-09 21:08:31 UTC
Out of curiosity, is it smoother if you restart KWin with `kwin_x11 --replace`? See Bug 462820.
Comment 2 e902 2023-01-12 20:34:05 UTC
(In reply to Nate Graham from comment #1)
> Out of curiosity, is it smoother if you restart KWin with `kwin_x11
> --replace`? See Bug 462820.

I just tried and no
Comment 3 Alex A.D. 2023-05-07 05:17:34 UTC
Experiencing the same issue. Desktop grid in the Plasma 5.27 is slow as hell. I've four Virtual Desktops on the multi-screen setup and it's very slow! Please fix asap. This is a major regression since 5.24, when it worked smoothly.
Comment 4 goingtosleep 2023-06-14 06:56:26 UTC
Same thing on my side too. Encounter the lag in Desktop Grid effect in both Manjaro and EndeavourOS. The symptom is like this:
- Login to plasma session.
- The effect is very laggy.
- Then when I open firefox, resize the firefox's windows, then maximize it, the effect is smooth again.

However, even when it looks smooth, it's still choppy when I click on a window to move to a virtual desktop, in particular at the end of the animation. It's clearer when choosing slower animation speed.

I have Intel CPU (9700K), AMD GPU (6600XT). Tried several kernels (vanilla, linux-lqx, linux-xanmod, linux-cachyos-bore, linux-tkg with different schedulers), even compiled them to make sure it's not laggy because of the kernel. Also tried to gain CPU performance using `cpupower`, and change the compositor config (prefer smoother animations, force smoothest, etc. I basically tried all). But the effect is still laggy.

Sometimes it's quite smooth, both at the beginning and the end, but after a short while, it will get choppy. I use this effect quite a lot, and to be honest it looks awesome, just hope it could be smooth again like the version in 5.24.
Comment 5 htpha 2023-08-28 12:17:54 UTC
I noticed if I use different Plasma Styles the lag reduces noticeably. For example Air, Oxygen or Suave (https://store.kde.org/p/1513276) are very laggy whereas Breeze, Adapta (https://store.kde.org/p/1191699) or Materia (https://store.kde.org/p/1229134) are way smoother.

Hope this workaround helps.

$ kwin_wayland --version
kwin 5.27.7
Comment 6 Niccolò Venerandi 2023-09-25 11:14:58 UTC
Git commit 028dd552cfb9d826b40b9620d869c98d2aa3dca3 by Niccolò Venerandi.
Committed on 25/09/2023 at 13:14.
Pushed by niccolove into branch 'master'.

Merge desktop grid and overview together with a new three-state design

Merges the desktop grid and overview effects together in a new three-state one;
you can switch between them with a certain shortcut or gesture, and you can also
still access either the desktop grid or overview directly.

Default shortcuts are also updated to be Meta+G for Grid, Meta+W for Overview,
Meta+Tab to switch between the three states and Meta+Shift+Tab to cycle in the
opposite direction.
Related: bug 474044, bug 460661, bug 460774, bug 456572, bug 449601, bug 450262, bug 449801, bug 461510, bug 459754, bug 459749, bug 459748, bug 459467
FIXED-IN: 6.0

M  +2    -0    CMakeLists.txt
A  +7    -0    kconf_update/CMakeLists.txt
A  +20   -0    kconf_update/kwin-6.0-overview-activities-shortcuts.py
A  +11   -0    kconf_update/kwin.upd
M  +16   -3    src/libkwineffects/effecttogglablestate.cpp
M  +3    -1    src/libkwineffects/effecttogglablestate.h
M  +0    -1    src/plugins/CMakeLists.txt
D  +0    -49   src/plugins/desktopgrid/CMakeLists.txt
D  +0    -127  src/plugins/desktopgrid/desktopgrid_config.cpp
D  +0    -48   src/plugins/desktopgrid/desktopgrid_config.h
D  +0    -206  src/plugins/desktopgrid/desktopgrid_config.ui
D  +0    -32   src/plugins/desktopgrid/desktopgridconfig.kcfg
D  +0    -9    src/plugins/desktopgrid/desktopgridconfig.kcfgc
D  +0    -250  src/plugins/desktopgrid/desktopgrideffect.cpp
D  +0    -99   src/plugins/desktopgrid/desktopgrideffect.h
D  +0    -18   src/plugins/desktopgrid/main.cpp
D  +0    -92   src/plugins/desktopgrid/metadata.json
D  +0    -306  src/plugins/desktopgrid/qml/DesktopView.qml
D  +0    -328  src/plugins/desktopgrid/qml/main.qml
M  +27   -6    src/plugins/overview/kcm/overvieweffectkcm.cpp
M  +15   -1    src/plugins/overview/kcm/overvieweffectkcm.ui
M  +3    -0    src/plugins/overview/overviewconfig.kcfg
M  +229  -24   src/plugins/overview/overvieweffect.cpp
M  +37   -16   src/plugins/overview/overvieweffect.h
M  +44   -36   src/plugins/overview/qml/DesktopBar.qml
M  +541  -193  src/plugins/overview/qml/main.qml
M  +24   -18   src/plugins/private/qml/WindowHeapDelegate.qml
M  +1    -0    src/plugins/windowview/qml/main.qml
M  +0    -2    src/plugins/windowview/windowvieweffect.cpp

https://invent.kde.org/plasma/kwin/-/commit/028dd552cfb9d826b40b9620d869c98d2aa3dca3