Display rendering is slow on Plasma 6 on an external monitor

Hi! I might’ve had the same issue with an RX580 eGPU. I fixed this by using the KWIN_DRM_DEVICES environment variable in /etc/environment.
To do this, just do sudo nano /etc/environment and add :
KWIN_DRM_DEVICES="/dev/dri/by-path/pci-0000\:03\:00.0-card:/dev/dri/by-path/pci-0000\:00\:02.0-card"
The above example is to indicate that the prioritised gpu to render the screen will be the one at the 0000:03:00.0 PCI adress (my RX580 when plugged in) and, in case that gpu is missing, it will use the one at 0000:00:02.0 which is my Intel Iris Xe. You’ll most likely have to change that by doing lspci | grep VGA which will return the correct PCI paths which you’ll have to change in the environment variable.
However, this environment variable is only detected and put in use when kwin starts , so when you login or when you do kwin --replace in your session (it will close some if not all windows and “reload the DE” ). I don’t know how it will behave on a laptop with both iGPU and dGPU however, but you should try it. Maybe you’ll just have to log out / reload kwin when plugging in you external display.
This was already a problem before KDE 6, and KDE 6 is supposed to have fixed multi-gpu configurations, which it has since you can use your external monitor in plug-and-play, but the subpar performance remains.

2 Likes