A perspective for a Roon Server running on my Red Hat Enterprise Linux server:
# uname -r
5.14.0-162.18.1.el9_1.x86_64
# cat /etc/redhat-release
Red Hat Enterprise Linux release 9.1 (Plow)
It’s helpful to consider all processes that belong to the Roon service:
├─start.sh───RoonServer─┬─RoonAppliance─┬─RAATServer───27*[{RAATServer}]
│ │ └─91*[{RoonAppliance}]
│ ├─processreaper
│ └─25*[{RoonServer}]
As we see, it is more than the RoonServer Process.
In detail:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1817 0.0 0.0 7120 3104 ? Ss Mar13 0:00 /bin/bash /opt/RoonServer/start.sh
root 2458709 0.0 0.1 22685820 118488 ? Sl Mar16 0:11 /opt/RoonServer/RoonDotnet/RoonServer RoonServer.dll
root 2458755 0.3 4.2 27739536 2820548 ? SLl Mar16 28:22 /opt/RoonServer/RoonDotnet/RoonAppliance RoonAppliance.dll -watchdogport=45279
root 2458759 0.0 0.0 3364 1192 ? S Mar16 0:00 /opt/RoonServer/Server/processreaper 2458755
root 2458888 0.0 0.2 23182648 166516 ? Sl Mar16 0:43 /opt/RoonServer/RoonDotnet/RAATServer RAATServer.dll
Linux memory usage is a bit complicated as some have already described previously.
We can however calculate the effective memory footprint of a process, which I have done in the table below for the two biggest Roon-related processes and some selcted non-related processes to provide a comparison of how much memory the typical Linux system uses:
Private + Shared = RAM used Program
...
14.3 MiB + 6.7 MiB = 21.0 MiB systemd (5)
7.4 MiB + 18.3 MiB = 25.7 MiB smbd (6)
29.9 MiB + 1.7 MiB = 31.7 MiB firewalld
33.3 MiB + 9.3 MiB = 42.6 MiB xfdesktop
26.2 MiB + 21.1 MiB = 47.3 MiB xfwm4
31.8 MiB + 19.6 MiB = 51.4 MiB xdg-desktop-portal-gnome
...
91.8 MiB + 6.2 MiB = 98.0 MiB RoonServer
...
138.9 MiB + 400.5 KiB = 139.2 MiB squeezeboxserve
...
1.5 GiB + 3.2 MiB = 1.5 GiB jellyfin
2.8 GiB + 20.2 MiB = 2.8 GiB dotnet (2)
...
Relevant for this discussion is RoonServer and dotnet, which RoonServer uses.
In my case then, it’s about 3GB that Roon uses.