Plasma VRAM usage

I’m frequently using DaVinci Resolve Studio and Blender for various tasks (but not simultaneously). I have a decently powerful Nvidia RTX A4000 16GB GPU, yet in both of these programs have at various occasions hit out of memory errors, specifically VRAM memory (my system has 64GB RAM).

Today, I decided to do a little digging into this, because on one Blender project, the numbers just weren’t adding up, with it failing out at a mere fraction of my total VRAM.

A quick search and I read about the nvidia-smi tool, which gives you a nice printout of current VRAM usage and the associated processes, for Nvidia users.

nvidia-smi

What I discovered was /usr/bin/plasmashell was consuming 12GB of VRAM! :exploding_head: The amount of times over recent years I have hit VRAM limits, and to think all this time it was probably just Plasma chewing up ¾ of it :face_with_spiral_eyes:

I changed Plasma’s Rendering Backend from “Automatic”, to “Software” and rebooted and bam, I now have loads of VRAM available for actual work. Plasma warns me that “Rendering may be degraded” because it’s in Software mode, but I’ve yet to see a difference.

Something to dig in https://www.reddit.com/r/kde/comments/1ikl22f/is_using_12_gb_of_vram_normal_with_nothing_open/

2 Likes

Based on that thread, it looks like it might be web browsers chewing up the VRAM (albeit via /usr/bin/plasmashell if that’s the case). I am running dual display with one being a 4K, which that thread suggests is a factor too:

  • 2750 x 1440 (1440p)
  • 3840 x 2160 (4K)

I might switch back to “Automatic” rendering backend and run a few more tests. I’m referencing dozens of browser tabs at a time for what I’m working on in Blender.

This issue seems to at least be in part due to slideshow wallpapers. Everytime the wallpaper cycles, additional VRAM is consumed by plasmashell. Even after halving the wallpaper update frequency on both displays from 1 minute, to 2 minutes, plasmashell is still consuming a whopping 12GB of VRAM after just 4 hours. Nothing is freed up by closing all desktop applications.

Below is nvidia-smi’s output after 4:14 hours of uptime. Note plasmashell’s 12120MiB of usage:

+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 575.64.05              Driver Version: 575.64.05      CUDA Version: 12.9     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA RTX A4000               Off |   00000000:09:00.0  On |                    0 |
| 41%   51C    P5             21W /  140W |   12864MiB /  15352MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+
                                                                                         
+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A            1874      G   /usr/bin/ksecretd                         3MiB |
|    0   N/A  N/A            1914      G   /usr/bin/kwin_wayland                   205MiB |
|    0   N/A  N/A            2001      G   /usr/bin/Xwayland                         3MiB |
|    0   N/A  N/A            2037      G   /usr/bin/ksmserver                        3MiB |
|    0   N/A  N/A            2039      G   /usr/bin/kded6                            3MiB |
|    0   N/A  N/A            2055      G   /usr/bin/plasmashell                  12120MiB |
|    0   N/A  N/A            2098      G   /usr/bin/kaccess                          3MiB |
|    0   N/A  N/A            2100      G   ...it-kde-authentication-agent-1          3MiB |
|    0   N/A  N/A            2201      G   /usr/bin/kdeconnectd                      3MiB |
|    0   N/A  N/A            2265      G   /usr/bin/xwaylandvideobridge              3MiB |
|    0   N/A  N/A            2302      G   /usr/lib/xdg-desktop-portal-kde           3MiB |
|    0   N/A  N/A            2574      G   /usr/bin/kwalletd6                        3MiB |
|    0   N/A  N/A            7769      G   /usr/lib/baloorunner                      3MiB |
|    0   N/A  N/A           99697      G   /usr/bin/krunner                          7MiB |
|    0   N/A  N/A          106314      G   /usr/bin/konsole                          3MiB |
+-----------------------------------------------------------------------------------------+
 12:52:38 up  4:14,  1 user,  load average: 0.15, 0.20, 0.18

Other issues start to present at this point, with LibreWolf becoming visually glitchy too.

Running this command frees up the VRAM and seems to fix LibreWolf’s issues too (after restarting LibreWolf):

plasmashell --replace &
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 575.64.05              Driver Version: 575.64.05      CUDA Version: 12.9     |
|-----------------------------------------+------------------------+----------------------+
| GPU  Name                 Persistence-M | Bus-Id          Disp.A | Volatile Uncorr. ECC |
| Fan  Temp   Perf          Pwr:Usage/Cap |           Memory-Usage | GPU-Util  Compute M. |
|                                         |                        |               MIG M. |
|=========================================+========================+======================|
|   0  NVIDIA RTX A4000               Off |   00000000:09:00.0  On |                    0 |
| 41%   51C    P5             22W /  140W |    1227MiB /  15352MiB |      0%      Default |
|                                         |                        |                  N/A |
+-----------------------------------------+------------------------+----------------------+
                                                                                         
+-----------------------------------------------------------------------------------------+
| Processes:                                                                              |
|  GPU   GI   CI              PID   Type   Process name                        GPU Memory |
|        ID   ID                                                               Usage      |
|=========================================================================================|
|    0   N/A  N/A            1874      G   /usr/bin/ksecretd                         3MiB |
|    0   N/A  N/A            1914      G   /usr/bin/kwin_wayland                   223MiB |
|    0   N/A  N/A            2001      G   /usr/bin/Xwayland                         4MiB |
|    0   N/A  N/A            2037      G   /usr/bin/ksmserver                        3MiB |
|    0   N/A  N/A            2039      G   /usr/bin/kded6                            3MiB |
|    0   N/A  N/A            2098      G   /usr/bin/kaccess                          3MiB |
|    0   N/A  N/A            2100      G   ...it-kde-authentication-agent-1          3MiB |
|    0   N/A  N/A            2201      G   /usr/bin/kdeconnectd                      3MiB |
|    0   N/A  N/A            2265      G   /usr/bin/xwaylandvideobridge              3MiB |
|    0   N/A  N/A            2302      G   /usr/lib/xdg-desktop-portal-kde           3MiB |
|    0   N/A  N/A            2574      G   /usr/bin/kwalletd6                        3MiB |
|    0   N/A  N/A            7769      G   /usr/lib/baloorunner                      3MiB |
|    0   N/A  N/A           99697      G   /usr/bin/krunner                          7MiB |
|    0   N/A  N/A          106314      G   /usr/bin/konsole                          3MiB |
|    0   N/A  N/A          106484      G   ...latform=wayland --disable-gpu          3MiB |
|    0   N/A  N/A          107640      G   plasmashell                             474MiB |
+-----------------------------------------------------------------------------------------+