Kwin_wayland Bleeds RAM with External Monitor on laptop

Hi all,

I’ve been experiencing issues with kwin_wayland on my setup, particularly when using an external monitor. Here are the details of my hardware and setup:

Hardware:

  • Laptop: ASUS TUF A15 FA506QR (16GB RAM)
  • CPU: AMD Ryzen 7 5800H
  • GPU1: AMD Radeon Vega Series / Radeon Vega Mobile
  • GPU2: NVIDIA GeForce RTX 3070 Mobile
  • External Monitor: LG UltraGear 2K 180Hz (connected via dock directly to the NVIDIA GPU)

Problem Description: The issue started about two months ago when I first started using the external monitor. Initially, the system would terminate the kwin_wayland process, which I confirmed by checking dmesg logs (I unfortunately don’t have those logs saved).

Over time, the problem evolved/changed completely: instead of terminating the process, the system became progressively more laggy until everything froze completely. Unplugging the external monitor did not resolve the freeze and a force reboot through the power key is required.

I’ve tried to connect the monitor to the laptop through the HDMI port which is not directly connected to the NVIDIA GPU, but goes through the internal one. Again I get into the same exact situation.

For the past couple of days I’ve been using this env variable that is supposed to help with this problem:

#!/usr/bin/sh

export KWIN_DRM_FORCE_MGPU_GL_FINISH=1

According to KDE wiki (Environment Variables · Wiki · Plasma / KWin · GitLab) I’ve putted the script above here: ~/.config/plasma-workspace/env/

Note: This happens over time it can be in the short span of an hour or the long span of up to four hours.

garunda-inxi:

System:
Kernel: 6.12.8-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 14.2.1
clocksource: tsc avail: hpet,acpi_pm
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=db2baf1a-01a3-4311-9428-cb6b675205c4 rw rootflags=subvol=@
quiet resume=UUID=4a23e327-ae59-4ccd-ab3b-4db8caad9ba4 loglevel=3
nvidia_drm.modeset=1 ibt=off
Desktop: KDE Plasma v: 6.2.5 tk: Qt v: N/A info: frameworks v: 6.9.0
wm: kwin_wayland vt: 1 dm: SDDM Distro: Garuda base: Arch Linux
Machine:
Type: Laptop System: ASUSTeK product: ASUS TUF Gaming A15 FA506QR v: 1.0
serial: <superuser required>
Mobo: ASUSTeK model: FA506QR v: 1.0 serial: <superuser required>
uuid: <superuser required> UEFI: American Megatrends LLC. v: FA506QR.415
date: 01/07/2023
Battery:
ID-1: BAT1 charge: 60.2 Wh (100.0%) condition: 60.2/90.2 Wh (66.7%)
volts: 16.4 min: 15.9 model: ASUS A32-K55 type: Li-ion serial: N/A
status: full
^[[FCPU:
Info: model: AMD Ryzen 7 5800H with Radeon Graphics bits: 64 type: MT MCP
arch: Zen 3 gen: 3 level: v3 note: check built: 2021-22
process: TSMC n7 (7nm) family: 0x19 (25) model-id: 0x50 (80) stepping: 0
microcode: 0xA500011
Topology: cpus: 1x dies: 1 clusters: 1 cores: 8 threads: 16 tpc: 2
smt: enabled cache: L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 4 MiB
desc: 8x512 KiB L3: 16 MiB desc: 1x16 MiB
Speed (MHz): avg: 1100 min/max: 400/4463 boost: enabled scaling:
driver: amd-pstate-epp governor: powersave cores: 1: 1100 2: 1100 3: 1100
4: 1100 5: 1100 6: 1100 7: 1100 8: 1100 9: 1100 10: 1100 11: 1100 12: 1100
13: 1100 14: 1100 15: 1100 16: 1100 bogomips: 102206
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities: <filter>
Graphics:
Device-1: NVIDIA GA104M [GeForce RTX 3070 Mobile / Max-Q] vendor: ASUSTeK
driver: nvidia v: 565.77 alternate: nouveau,nvidia_drm non-free: 550.xx+
status: current (as of 2024-09; EOL~2026-12-xx) arch: Ampere code: GAxxx
process: TSMC n7 (7nm) built: 2020-2023 pcie: gen: 1 speed: 2.5 GT/s
lanes: 8 link-max: gen: 4 speed: 16 GT/s lanes: 16 ports: active: none
off: DP-1 empty: none bus-ID: 01:00.0 chip-ID: 10de:249d class-ID: 0300
Device-2: Advanced Micro Devices [AMD/ATI] Cezanne [Radeon Vega Series /
Radeon Mobile Series] vendor: ASUSTeK driver: amdgpu v: kernel arch: GCN-5
code: Vega process: GF 14nm built: 2017-20 pcie: gen: 3 speed: 8 GT/s
lanes: 16 link-max: gen: 4 speed: 16 GT/s ports: active: eDP-1
empty: HDMI-A-1 bus-ID: 06:00.0 chip-ID: 1002:1638 class-ID: 0300
temp: 57.0 C
Device-3: Microdia PC-LM1E driver: snd-usb-audio,uvcvideo type: USB
rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-1.4:6
chip-ID: 0c45:636d class-ID: 0102 serial: <filter>
Device-4: IMC Networks USB2.0 HD UVC WebCam driver: uvcvideo type: USB
rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-4:10
chip-ID: 13d3:56a2 class-ID: 0e02 serial: <filter>
Display: wayland server: X.org v: 1.21.1.15 with: Xwayland v: 24.1.4
compositor: kwin_wayland driver: X: loaded: amdgpu,nvidia
unloaded: modesetting,nouveau alternate: fbdev,nv,vesa dri: radeonsi
gpu: nvidia,amdgpu d-rect: 3584x1152 display-ID: 0
Monitor-1: DP-1 pos: right res: 2048x1152 size: N/A modes: N/A
Monitor-2: eDP-1 pos: primary,left res: 1536x864 size: N/A modes: N/A
API: EGL v: 1.5 hw: drv: nvidia drv: amd radeonsi platforms: device: 0
drv: nvidia gbm: drv: nvidia surfaceless: drv: nvidia wayland: drv: radeonsi
x11: drv: radeonsi
API: OpenGL v: 4.6.0 compat-v: 4.6 vendor: amd mesa v: 24.3.3-arch1.1
glx-v: 1.4 direct-render: yes renderer: AMD Radeon Graphics (radeonsi
renoir LLVM 18.1.8 DRM 3.59 6.12.8-zen1-1-zen) device-ID: 1002:1638
memory: 500 MiB unified: no display-ID: :1.0
API: Vulkan v: 1.4.303 layers: 9 device: 0 type: integrated-gpu name: AMD
Radeon Graphics (RADV RENOIR) driver: N/A device-ID: 1002:1638
surfaces: xcb,xlib,wayland device: 1 type: discrete-gpu name: NVIDIA
GeForce RTX 3070 Laptop GPU driver: N/A device-ID: 10de:249d
surfaces: xcb,xlib,wayland device: 2 type: cpu name: llvmpipe (LLVM
18.1.8 256 bits) driver: N/A device-ID: 10005:0000
surfaces: xcb,xlib,wayland
Audio:
Device-1: NVIDIA GA104 High Definition Audio vendor: ASUSTeK
driver: snd_hda_intel v: kernel pcie: gen: 3 speed: 8 GT/s lanes: 8
link-max: gen: 4 speed: 16 GT/s lanes: 16 bus-ID: 01:00.1
chip-ID: 10de:228b class-ID: 0403
Device-2: Advanced Micro Devices [AMD/ATI] Renoir Radeon High Definition
Audio vendor: ASUSTeK driver: snd_hda_intel v: kernel pcie: gen: 3
speed: 8 GT/s lanes: 16 link-max: gen: 4 speed: 16 GT/s bus-ID: 06:00.1
chip-ID: 1002:1637 class-ID: 0403
Device-3: Advanced Micro Devices [AMD] ACP/ACP3X/ACP6x Audio Coprocessor
driver: N/A alternate: snd_pci_acp3x, snd_rn_pci_acp3x, snd_pci_acp5x,
snd_pci_acp6x, snd_acp_pci, snd_rpl_pci_acp6x, snd_pci_ps,
snd_sof_amd_renoir, snd_sof_amd_rembrandt, snd_sof_amd_vangogh,
snd_sof_amd_acp63, snd_sof_amd_acp70 pcie: gen: 3 speed: 8 GT/s lanes: 16
link-max: gen: 4 speed: 16 GT/s bus-ID: 06:00.5 chip-ID: 1022:15e2
class-ID: 0480
Device-4: Advanced Micro Devices [AMD] Family 17h/19h/1ah HD Audio
vendor: ASUSTeK driver: snd_hda_intel v: kernel pcie: gen: 3 speed: 8 GT/s
lanes: 16 link-max: gen: 4 speed: 16 GT/s bus-ID: 06:00.6
chip-ID: 1022:15e3 class-ID: 0403
Device-5: Microdia PC-LM1E driver: snd-usb-audio,uvcvideo type: USB
rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-1.4:6
chip-ID: 0c45:636d class-ID: 0102 serial: <filter>
API: ALSA v: k6.12.8-zen1-1-zen status: kernel-api tools: N/A
Server-1: PipeWire v: 1.2.7 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
Device-1: Realtek RTL8111/8168/8211/8411 PCI Express Gigabit Ethernet
vendor: ASUSTeK driver: r8169 v: kernel pcie: gen: 1 speed: 2.5 GT/s
lanes: 1 port: e000 bus-ID: 02:00.0 chip-ID: 10ec:8168 class-ID: 0200
IF: enp2s0 state: down mac: <filter>
Device-2: Intel Wi-Fi 6 AX200 driver: iwlwifi v: kernel pcie: gen: 2
speed: 5 GT/s lanes: 1 bus-ID: 03:00.0 chip-ID: 8086:2723 class-ID: 0280
IF: wlp3s0 state: up mac: <filter>
Device-3: Realtek RTL8153 Gigabit Ethernet Adapter driver: r8152 type: USB
rev: 2.1 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-1.1:8
chip-ID: 0bda:8153 class-ID: 0000 serial: <filter>
IF: enp6s0f3u1u1 state: up speed: 1000 Mbps duplex: full mac: <filter>
IF-ID-1: wg0-mullvad state: unknown speed: N/A duplex: N/A mac: N/A
Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
Bluetooth:
Device-1: Intel AX200 Bluetooth driver: btusb v: 0.8 type: USB rev: 2.0
speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 3-3:3 chip-ID: 8087:0029
class-ID: e001
Report: btmgmt ID: hci0 rfk-id: 0 state: up address: <filter> bt-v: 5.2
lmp-v: 11 status: discoverable: no pairing: no class-ID: 6c010c
Drives:
Local Storage: total: 2.33 TiB used: 1.29 TiB (55.5%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Lexar model: SSD NM790 2TB
size: 1.86 TiB block-size: physical: 512 B logical: 512 B speed: 63.2 Gb/s
lanes: 4 tech: SSD serial: <filter> fw-rev: 11296 temp: 45.9 C scheme: GPT
ID-2: /dev/nvme1n1 maj-min: 259:4 vendor: SK Hynix model: HFM512GD3JX013N
size: 476.94 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
lanes: 4 tech: SSD serial: <filter> fw-rev: 41000C20 temp: 36.9 C
scheme: GPT
Partition:
ID-1: / raw-size: 1.85 TiB size: 1.85 TiB (100.00%) used: 1.29 TiB (70.0%)
fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 584 KiB (0.2%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
ID-3: /home raw-size: 1.85 TiB size: 1.85 TiB (100.00%)
used: 1.29 TiB (70.0%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-4: /var/log raw-size: 1.85 TiB size: 1.85 TiB (100.00%)
used: 1.29 TiB (70.0%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-5: /var/tmp raw-size: 1.85 TiB size: 1.85 TiB (100.00%)
used: 1.29 TiB (70.0%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
ID-1: swap-1 type: zram size: 15.02 GiB used: 0 KiB (0.0%) priority: 100
comp: zstd avail: lzo-rle,lzo,lz4,lz4hc,deflate,842 max-streams: 16
dev: /dev/zram0
ID-2: swap-2 type: partition size: 16.53 GiB used: 0 KiB (0.0%)
priority: -2 dev: /dev/nvme0n1p3 maj-min: 259:3
Sensors:
System Temperatures: cpu: 75.0 C mobo: N/A gpu: amdgpu temp: 61.0 C
Fan Speeds (rpm): N/A
Info:
Memory: total: 16 GiB note: est. available: 15.02 GiB used: 3.88 GiB (25.8%)
Processes: 419 Power: uptime: 0m states: freeze,mem,disk suspend: s2idle
wakeups: 0 hibernate: platform avail: shutdown, reboot, suspend, test_resume
image: 5.96 GiB services: org_kde_powerdevil, power-profiles-daemon,
upowerd Init: systemd v: 257 default: graphical tool: systemctl
Packages: pm: pacman pkgs: 1633 libs: 477 tools: octopi,paru Compilers:
gcc: 14.2.1 alt: 13 Shell: garuda-inxi default: fish v: 3.7.1
running-in: konsole inxi: 3.3.36
Garuda (2.6.26-1):
System install date:     2024-09-11
Last full system update: 2025-01-07
Is partially upgraded:   No
Relevant software:       snapper NetworkManager dracut nvidia-dkms
Windows dual boot:       Probably (Run as root to verify)
Failed units:

╭─wh1t3_r4v3n@nothingness in ~ took 2s
╰─λ

Have you tried switching to x11 to see if the problem persists

5 Likes

I have tried, but with X11 I have other problems related to scaling, color accuracy and really laggy performance and unexplainable stutters in games. Overall I would like to stay on wayland and find/fix the root of the problem.

Have you tested alternate cabling, ie… hdmi, display port, DVI.

4 Likes

Yeah I’ve tested, HDMI-HDMI (Through dock and Internal port), DP-DP (Through dock), HDMI-DP( dock and internal) and DP-HDMI (Through dock). I even went to a friend to try on his monitor with his cable. The result is always the same.

On a side note, I’ve noticed that when firedragon is running the process of kwin_wayland hoarding RAM exponentialy increases (doesn’t matter if i close the browser afterwards). I don’t have any addons except ublock and privacy badger, but I’ve tried with them disabled, yet same result.

Obviously you only have problems with the external monitor, regardless of whether you use wayland or x11.

You have a hybrid graphics system, the iGPU is activated by default and controls the laptop’s internal display and the external monitor at the same time (the dGPU is only switched to when it is needed).


I haven’t checked it yet, but I don’t think this iGPU (that must be an RX Vega 8) can control the external monitor at 2K with 180Hz.

Set the external monitor to 60Hz, disable VRR and see what happens.

1 Like

The same problems with x11 stay even after the external monitor is disconnected (i.e on a trip somewhere). So the problem is not in the monitor, because I also use Kali linux when I am working and none of these problems appear there. The monitor (when using Kali) is always connected to the internal HDMI port, reasons being when I try to used it with the dock even with forced on GPU it’s not detecting it.

Yesterday I also swapped one of my NVME’s to put one with windows 11 installed on it and left it running with 25 firefox tabs open, Baldur’s Gate 3 and on top op that I threw whole system scan in defender. This morning when I woke up everything was as I’ve put it, there we no crashes or a complete freeze. I ran this through the dock. Will make second test today to try and connect it to the internal HDMI port.

You are right, but in my case I use the dock (USB type C) because that is the only way that you can bypass the internal GPU and go straight for the external one. On top of that when I use the external monitor I am never on battery and I have forced the NVIDIA GPU to be always on.

I checked it now, yes it’s indeed RX Vega 8, which in my research i found can support Max Displays :3 , Max. Resolution3840×2160 @ 60Hz . So i am pretty sure it can handle it.

P.S Forgot to tell i am using the monitor at 144Hz
P.S.S Found someone having the same issue on arch with KDE Plasma so i thought that i am not the only one with this problem. Memory Leak with Wayland? / Newbie Corner / Arch Linux Forums

1 Like

If everyone seeking help worked with as much energy, enthusiasm and drive to solve the problem as you did, we could almost close the forum :smile:
Nice work btw.

That’s my suspicion too.

1 Like

Is there a newer bios version on your laptop manufacturers support site?

If so, you should definitely update your bios.

Is it possible that your docking station could also use a firmware update?

2 Likes

Unfortunately on my laptop manufacturers support site for my model the newest BIOS version is 415 which I currently have installed (Checked in the BIOS before writing this response).

According to my research the dock (baseus bs-oh047) doesn’t need firmware update (They don’t have any kind of download for their hubs). I think the drivers for it come from the kernel (not sure about that).

Thank you I really appreciate that. I just wanted to be as thorough as possible so everything that is in my knowledge and power is already done.

I don’t know what to suspect anymore, but yes the problem appears to be somewhere in the KDE Plasma. Because it doesn’t matter what application is open on the screen at some point in time it will start gobbling up RAM. I have noticed that it depends on the application:

  • The fastest way is to open firedragon and just do something in the browser, maybe drag it to the other monitor (the dragging and resizing speeds it up even more).
  • The next one is just opening the two messaging apps that I use on a daily basis (Signal and Telegram)
  • Third one which is the slowest of them all is running either games or VM’s.

So yesterday I did the exact same test that I did the last time with the windows 11 except the part where I connected the monitor to the internal HDMI. The results are the same. If someone has any more tests that they can suggest to pinpoint where the issue lies, I am open to hear them.

(Edit) P.S Now when I was putting up the list of how things affect the time need for a freeze. I have a thought that everything boils down to how often I resize/move between monitors / minimize / change in any way the rendering of a window, but at then I remembered that I even tried to not move the browser window at all and just watch a movie in it and it crashed again.

At this point in time I am giving every little detail that I consider even slightly important, but I can’t remember everything that I have done. If someone can think of information that can be useful ask away and I will try to answers as detailed as I possibly can.

1 Like

Some ideas,
did you tested a different kernel ?
try nvidia-open-dkms (supports only 1650 and newer gpus)
to read :upside_down_face:

1 Like

That was my thought too - install linux-lts and linux-lts-headers and boot with the lts kernel. If you don’t have any issues, then switch back to your 6.12.8-zen1-1-zen kernel and remove this kernel parameter:

→ reboot and check if the issues are gone.
It could be a framebuffer issue (from kernel version 6.12).

2 Likes

For the past 5 days I’ve done these test all resulting in the same behaviour (still eating up the ram, and freezing at some point):

  • Tried using the lts kernel
  • Tried using the nvidia-open-dkms (Noticeable performance loss)
  • Combining both of the answers above
  • Removing this ( nvidia_drm.modeset=1)
  • Combining all of the three options.

At this point I think that this is some KDE Plasma bug that only happens on wayland with laptops which are connected to external monitor.

1 Like

That’s possible, but then far more users would be affected. Obviously it only affects a few isolated users. My daily driver is also a laptop - intel/nvidia/kde/wayland + external monitor via HDMI - and I can’t reproduce it.

You have problems with x11 and wayland, even though the issues are different. That’s why I don’t think kwin is the cause, just the symptom.

To troubleshoot, it’s best to start from scratch:

  1. If you set the dGPU as the active GPU with prime, undo it, remove the environment variable you set and remove the nvidia drivers completely (everything that is nvidia stuff).
    Remove all peripherals from the laptop (especially the dock and the external monitor).
    Reboot into the BIOS and disable the nvidia dGPU so that only the AMD iGPU is active on the hardware side.
    Boot garuda and check whether you have issues without an external monitor. Then connect the external monitor directly (without a dock) and see what happens.

  2. Enable hybrid graphics in the BIOS. Boot Garuda and check whether you have any issues with the open source driver nouveau (first without an external monitor and then with an external monitor).

  3. Reinstall the Nvidia drivers → reboot and check whether you have any issues.

  4. Disable the AMD iGPU in the BIOS so that only the nvidia dGPU is active on the hardware side. Then test again without an external monitor and then with an external monitor.

3 Likes

I used to run these commands along with many others in a service to clean up things before suspending:

#!/bin/bash
sync; echo 3 > /proc/sys/vm/drop_caches 
swapoff -a 
swapon -a
exit

If you run the above script as a service or cron job at a regular interval you might be able to keep your ram usage from escalating to the point where your system crashes. The script will clear the page cache, dentries and inodes, and will sync and flush the file system buffer. Running those commands will generally eliminate system lag and prevent freezing if executed before the system locks up.

The commands must executed as root, a root systemd service, or a root cronjob.

Obviously only a temporary workaround, but it may help in the interim until you find a proper fix.

2 Likes

I am having the same problem as well on an AMD + Nvidia laptop. I have a higher chance of encountering this issue after waking up the laptop from sleep. Also plugging and replugging the HDMI cable is a very temporary one as the problem comes back afterwards. The only way to fix it for me is to restart kwin_wayland, but you will be closing all the currently running apps by doing this.

I have never heard of this before. To my knowledge, most of gaming laptops are muxless, for cost savings, which usually means that you cannot choose the GPU for output. In these laptops, the output is delegated to the iGPU, therefore its not possible to truly bypass them. The rendering can still be done by the dGPU, yet you still rely on the iGPU for displaying it.

I tried to find info about this (bypassing iGPU with USB-C) but I couldn’t, so if you have some sources for it I would like to take a look :slight_smile: .

One of the ways you can tell if your laptop is muxed or not, is to check BIOS and see if you have an option to disable hybrid GPU and go only dedicated GPU (so only nvidia). If you have this option, then your laptop is likely muxed but even if you don’t have it, it could also be because the manufacturer just provided a very limited BIOS.

If you do have this option, you can try to disable the iGPU completely and then use the dedicated GPU only and check if the bug presists. That would help to narrow down if the problem presists because of dual GPUs, or specifically isolated to Nvida GPU on laptops.

There is also another thing you could do where you force Kwin to render through the dGPU instead of iGPU. While the iGPU will still be active and ON, it won’t be utilized at all. By default it goes for iGPU. You can change this via the parameter KWIN_DRM_DEVICES=/dev/dri/card1 in /etc/environment file. You need to check if card0 or card1 points to nvidia or not. Verify with the output of

> ls -l /sys/class/drm/renderD*/device/driver

lrwxrwxrwx 1 root root 0 Jan 27 21:48 /sys/class/drm/renderD128/device/driver -> ../../../../bus/pci/drivers/nvidia
lrwxrwxrwx 1 root root 0 Jan 27 21:48 /sys/class/drm/renderD129/device/driver -> ../../../../bus/pci/drivers/amdgpu

The order shown from this output shows if your card is 0 or 1. In my case, bcs nvidia was listed first , then is card0. You can use amdgpu_top or nvtop to verify if kwin is being used by iGPU or dGPU. :warning: Take this approach with caution as this is going to also make your usual apps like browser or video players also make use of your dGPU (NVIDIA) VRAM, so it could negatively affect the performance on games that are heavy VRAM depended (i.e The Last Of Us). It is better to leave the iGPU handle kwin_wayland for stability.

EDIT: Alternatively, for the last point, you could disable hardware acceleration on such apps as a compromise. Thus you would be able to save most of the VRAM , with around 300-400 MB taken by NVIDIA for kwin.

1 Like

If you use X11, you don’t face this severe limitation. You can also restart the plasmashell and not lose your current session.

I have issues with a few programs on Wayland, so I’m sticking to X for now. The ability to restart kwin and plasma without any impact is a huge advantage over Wayland IMO.

1 Like

I get your point, but for me X is not as good as Wayland for usability. I have a smoother performance on Wayland when things work compared to X, which is a stuttery mess. Furthermore, HDR support is non-existent for Xorg and they have no intentions to implement this on upstream. The point still stands that Xorg tends to be a bit more stable than Wayland.

I would still prefer if we could at least diagnose and isolate what is causing the VRAM leak in this thread.

1 Like

I realize it’s a rather hacky way of keeping your RAM usage low, but it does the job if a leak is occurring.

No one has commented on this earlier suggestion of mine. Hacky, but if run as a root systemd service or cronjob it might temporarily serve as a Band-Aid solution.

1 Like