You only list user processes, maybe a root process is using the additional ram.
Where do I see processes by root?
Linux always uses memory to a maximum extend. Memory that is not used by code and applications is used for buffers and cache. Much of that memory remains available for applications that need it. If an application requests memory, and no more “free” memory is available, caches and buffers will be decreased (by not anymore temporarily keeping information from disk in memory for later access, or by decreasing the temporary storage in memory of data read or written to disk) to accomodate for the demand.
See here for an explanation of the output of the command free
, which will help to understand the different uses of memory.
But my apps constantly crash
user@fedora:~$ free -h
total used free shared buff/cache available
Mem: 15Gi 14Gi 252Mi 4,8Gi 6,0Gi 1,2Gi
Swap: 8,0Gi 8,0Gi 240Ki
BTW, your screenshot link is broken
Also remember that files in /tmp eats up your memory.
Try looking for processes killed by oom
Mere kilobytes there
I don’t see how that helps, but sure
I use earlyoom because default killers are of little help, system got stuck to the point of having to reboot too often.
These are mostly browser windows because earlyoom is tuned to kill Firefox processes first.
Try using top to find the process
top
I already tried it
Sorted by memory:
By root:
Edit: Here’s processes by all users sorted by memory with GB prefixes. %MEM seems small, but LLM says VIRT is my memory usage in GB, and if that’s the case, why the percentage of total memory the process is using is shown being so small? And some of these numbers exceed my total memory capacity by far.
I corrected the link. Your swap is full, applications crash and available memory is low: your system is indeed short of memory. There are several reasons why that can happen: cached data can still be be in active use, preventing the system from freeing it immediately, there may be a lot of dirty page, i.e., pages that have been modified but were not yet written to disk, no more swap is available, there could be memory leaks, etc. Your system is in use for 6 days. For sure, the situation will be resolved when the system is rebooted. Perhaps, the situation temporarily will be improved by having the system drop caches: echo 3 > /proc/sys/vm/drop_caches
- give the system some time. A simple ‘sync’ will clear dirty pages.
After that, the kernel and processes will proceed as usual, so the problem likely will reappear after a while.