Possibly related:

I also don’t understand why every chat app needs 1GB of RAM to itself.
I was running mint with 4gb with steam and signal on background as well as Firefox with 2 tabs open. Not perfect but definitely usable
I traced this back to a particular rogue website. But yeah I think GNOME uses more RAM anyway, then having everything containerised in Bazzite is extra RAM I’m sure. Then having like 5 chat apps, Steam Firefox, etc open was easily eating up my 16GB RAM. Of course more RAM means more is used because unused RAM is wasted RAM, so it’s hard to judge one system against another.
~19 Gb firefox
Tf you doing
The about:processes page doesn’t even add up close to that:

Then it’s just a bug I guess
Or someone is getting very rich in bitcoin right now
Someone else pointed out cached RAM is shown as used in Linux, so Firefox is probably showing actual usage and the process list probably includes the RAM cached for Firefox.
I need those tabs for… uhhhh…
It do be like that
I got surprised like two days ago when I got a desktop notification that Linux kernel killed a process, because there was no memory available, or something like that. I didn’t know it can do that, lol.
Pretty useful for not getting locked out. It can be finetuned if you want to assign priorities and that.
It is usually handled by systemd-oomd.
You can really download more ram if you use cloud storage as swap
That sounds like a performant way to run a system!
Someone really did it
Haha I just searched up this person using Google Drive as swap 😯
https://www.reddit.com/r/linuxmasterrace/comments/rrb7gk/you_cant_download_more_r/
Lol nice
It’s already been explained elsewhere, but the cache can be free, as needed - that’s how linux works.
There’s 57+ GB available ram, yet.Yip, got that now. I misunderstood, as it’s different to Windows, which shows cached memory as free since it’s available to apps as needed.
You could probably configure your system monitor to show available memory - that is memory available given that cache can be dropped - rather than free memory that should always be as close to zero as possible.
Well in a turn of events, the stupid photo printing website I was using just kept filling RAM up until it was full then GNOME crashed me back to the login page.
Don’t be confused by cached ram, be confused by the oom killer activating while you have plenty of swap and for some reason it kills the shell you ran Firefox from.
If you want to go on a memory allocation adventure try disabling memory overcommit 🥲
systemd-oomd with its memory pressure model never really worked for me, even after configuring it to be fairly aggressive. My system still irreversibly locks up the second the memory and swap touches 100%. earlyoom with its more primitive model works much better and actually kills processes before the memory and swap hits the ceiling. Combine this with a 2x RAM size swap file and desktop Linux is finally as stable as Windows and macOS. It is just a shame that distros do not configure generous, dynamically growing, swap files and a good oom killer by default, and you have to discover this fundamental problem of the Linux kernel yourself on multiple different devices before realizing what you actually need to do to fix these random freezes.
If you’re out of ram and using swap thats when the oom killer should be killing. Swap is not ram.
Unless you use zram. Compressing pages is pretty useful as an intermediate stage.
The swap is zram in this case.
Me when I load some big matrices
I had a power surge last night, desktop didn’t even flinch.
My first thought was that it was running a windows vm…
Does it mean 35.1 GB out of the 44.3 GB is actually cached? Then you have quite low actual RAM usage considering you have 67 GB.
Oh good question. Now I’m wondering. 44+35 is bigger than the 67GB I have, but normally I would expect pretty much all the RAM to hold cached data, where some is also marked as free in case a process needs it.
Can someone explain this memory screen, as your question has raised many more for me!
“Cache” means space used for disk caching. It’s free to be used for processes as needed, but the system consumes idle RAM until then to speed things up, so it’s technically not “free”, even though it isn’t used by system processes. In Linux, used - cache gives you the actual consumption by processes.
Thanks, someone else also mentioned this. Cached is considered used in Linux, where as in Windows it’s considered free since applications can use it if they need it even though it holds data.
Hey, unused memory is wasted memory
If you got it, flaunt it.
If by “unused” you mean not actively storing data, then the Linux kernel docs disagree.
oh i see you’re also using a single tab for youtube and no other tabs
Solution: if you only have 4GB ram, nothing can use more than 4GB
I had one stick of 16GB and it was not enough. I was going to get a second stick, but said screw it and got two 32GB (it’s a laptop and only has two slots).
How does 2 x 32 GB sticks give you 67 GB of RAM? Did you download more RAM?
This is probably down to decimal versus binary unit prefixes. As far as I’m aware, RAM is almost always still power of two kibi-, mebi- or gibibytes, unlike more permanent storage, and it often gets the kilo-, mega- and giga- prefixes regardless.
In other words, if you mix up thousands and 1024s you can get 64×1024×1024×1000 (whoops) which is roughly 67 billion.
This being a laptop, is it possible there’s 4GB soldered plus the 2 DIMM slots? I think I’ve seen something similar on a thinkpad.
Sounds more plausible. Either that or the system is reporting RAM + swap - VRAM reserved memory somehow.
How does that even happen 💀💀 I have 2x8gb, usually have teams open, Firefox, telegram, a virtual machine with windows 10, a few IDEs and it usually only takes 10-12gb max mostly due to the vm requiring flat 8 gigs
I dunno but the extra RAM was like a night and day difference.
/swapfile joined the chat
Depends on how much /swap you’ve got.
It absolutely will try, it just gets killed by the oom reaper.
I’ve used Linux for years and never in my life have I seen anything crash or close because of a oom killer. It’s myth for me that it exists. Me looking at my firefox occupying 6GB of the 8GB ram and opening intellij so it becomes full and swap is on 3GB.
It only happens when you run out of swap and ram
My Firefox has a couple hundred tabs open, one of which had a memory leak. It was getting killed by the OOM killer (on my 64GB of RAM system!) about twice a day. It’s not doing it anymore, though; I must’ve closed the correct tab.
Doesn’t Firefox offload unused tabs by now?
Its not a myth at all. If a software uses too much RAM it has to be killed because otherwise the OS crashes. You can read more about it here: https://linux-mm.org/OOM_Killer
Here is the source code: https://codebrowser.dev/linux/linux/mm/oom_kill.c.html
It is just not very tuned for desktop as it will lock up the system and empty every single type of buffer in the kernel before it is actually invoked.
It depends on the app. For some apps it just kills the app and everything is happy
Unless you have the
vm.overcommit_memorysysctl set to 2, and your overcommit is set to less than your system memory.Then, when an application requests more memory than you have available, it will just get an error instead of needing to be killed by OOM when it attempts to use the memory at a later time.
Isn’t there a trade off though?
Yes. Memory allocated, but not written to, still counts toward your limit, unlike in overcommit modes 0 or 1.
The default is to hope that not enough applications on the system cash out on their memory and force the system OOM. You get more efficient use of memory, but I don’t like this approach.
And as a bonus, if you use overcommit 2, you get access to
vm.admin_reserve_kbyteswhich allows you to reserve memory only for admin users. Quite nice.
Windows shows memory used for cache as free. Linux per default shows it as used.
Try
free -mAlso I would disable swap, it is no longer 2004.
Windows shows memory used for cache as free. Linux per default shows it as used.
Ah thanks for the explanation!
Also I would disable swap, it is no longer 2004.
I’m using Bazzite as of recently, and learnt the first day not to touch the system. Anyway, it’s zram not an on disk swap file.
It depends on the application used as some show cached as used and some don’t. But it is being more common to not show cached as used.
It is also used for system suspend.
Disabling swap will prevent a system from suspending, which might be fine, but I use it.
And swap isn’t some ancient relic. Sure, my 32GB desktop barely uses it, but my home server benefits greatly from having 64GB of swap in addition to 16GB of physical memory. It may not need to use much more than 16GB at any one time, but shit runs a lot better using a giant SSD swap with how many services I run.













