Thread #108637757
vintologi.com
Linux fanboys can't explain why 1.2 GiB of my ram is missing in linux 04/19/26(Sun)14:27:02 No.108637757
Linux fanboys can't explain why 1.2 GiB of my ram is missing in linux 04/19/26(Sun)14:27:02 No.108637757
Linux fanboys can't explain why 1.2 GiB of my ram is missing in linux vintologi.com 04/19/26(Sun)14:27:02 No.108637757 [Reply]▶
File: 1.2 GiB missing.png (6.7 KB)
6.7 KB PNG
1.4 GiB that is missing cannot be utilized at all no matter how badly it's needed.
Less than 200 MiB is unavailable if i boot memtest86+ or windows 10
I have seen people spread misinformation claiming that memory usage stats in linux isn't real allocation but it very much is and if you run out if it the system will halt so badly you can barely use it at all.
169 RepliesView Thread
>>
>>
>>
>>
>>
>>
>>
>>108637867
It doesn't show up in mate-system-monitor and isntead i simply says i only have 62.6 GiB of ram even though i paid for 64 GiB (it should be exactly 64 GiB physically).
But the actual amount of ram that can actually be utilized (without resorting to a something like SWAP) is of course less than 62.6 GiB, Max is around 62300 MiB last time i checked (due to XFCE4, etc).
>>
>>
>>108637903
Seems like it's reserving a lot only to then not actually use it.
[ 0.000000] DMI: Memory slots populated: 2/4
[ 0.157135] Memory: 65373456K/66935632K available (20562K kernel code, 2951K rwdata, 16740K rodata, 4776K init, 4600K bss, 1517888K reserved, 0K cma-reserved)
[ 0.157896] x86/mm: Memory block size: 2048MB
>>
>>
>>
>>
>>
>>108638022
No. First, that's for storage. Second, 64GB is about 59.6GiB, so that conversion wouldn't even account for this amount.
My uneducated guess is this is likely memory held by the kernel for various tasks. Eg: your SSD doesn't have cache and is system memory mapped for its lookup.
>>
>>108637757
this is memory mapped space, you can sudo cat /proc/iomem to see how it's been carved out.
hardware often needs to interface with the system through memory mappings
in my case, i have 256GiB physical but get 251.2GiB in userspace, approx 2~3GiB being PCI/MMIO, and 1~2GiB being ACPI/firmware/reserved
>if you run out if it the system will halt so badly you can barely use it at all
make sure you have an oomkiller on!
>>
>>
>>108638399
External devices can request ram instead of virtual memory.
For instance smart access memory/rebar gives the gpu access to the entire ram pool instead of only chunks. NVME drives without cache will use your ram as cache and its up to the OS to decide how much. On Windows by default its 64mb, other Linux OS may differ.
>>
>>
>>
>>108637757
https://kernel-internals.org/mm/memory-reservation/
Note: your GPU RAM might be in the list below
Kernel Memory Reservation Mechanisms
Not all physical RAM is yours to use — the kernel, firmware, and hardware carve out regions long before user space ever runs
Why reservations exist
Physical memory is not a flat, uniformly available resource. By the time the kernel reaches start_kernel(), several parties have already laid claim to portions of the physical address space:
Firmware tables — the BIOS, ACPI tables (RSDT, XSDT, DSDT), and SMBIOS data reside in RAM and must not be overwritten
Kernel text and data — .text, .rodata, .data, .bss, and related sections occupy fixed physical addresses set by the bootloader
EFI runtime services — on UEFI systems, boot services memory and the EFI memory map itself need protection
EBDA and legacy BIOS region — the Extended BIOS Data Area and the top of the first megabyte are historically corrupt-prone
Device memory and memory-mapped I/O — firmware may describe ranges as E820_TYPE_RESERVED rather than RAM
crashkernel regions — a dedicated region held in reserve for the kdump capture kernel
CMA pools — contiguous memory for DMA that doubles as ordinary movable memory until needed
Hardware quirks — some chipsets corrupt specific physical ranges (Sandy Bridge iGPU is a canonical x86 example)
>>
>>
>>
>>108638505
>https://kernel-internals.org/mm/memory-reservation/
Doesn't answer why windows 10 makes less than 200 MiB unavailable and still works fine.
>>
>>
>>
>>
>>108638210
>>108638108
64/1.024 == 62.5
You are a faggot who can't do math
>>
>>
File: 1260065887014185.jpg (41.4 KB)
41.4 KB JPG
>>108637757
someone tell this absolute normie newfag the difference between counting bytes in 1024 and 1000 units?
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>
>>108638869
Dipshit. The reserved memory wouldn't even show up there. It reports only usable memory. Read the fucking man page.
>>108638888
>in page
The issue is why the kernel needs gigs worth of pages, not why it is reserved. Stop being obtuse.
>>
>>
File: images.jpg (5.7 KB)
5.7 KB JPG
>>108639033
Yeah, exactly! You have 25+ available, what do you need 15+ for?
>>
>>
>>
>>
>>
>>
>>
>>108639213
It's supposed to make a useful system. Swallowing up your entire physical address space for record keeping isn't it. Sad I have to explain this to you, but you're that special kind of autistic retard who can't infer anything. I anxiously await your next low-int nitpick.
>>
>>
File: Screenshot_20260419_194758.png (51 KB)
51 KB PNG
>>108638210
>>108638714
>>108638764
>>108638714
NTA. But please learn how to use google. pic related.
regarding the question of OP: Google MMIO. tl;dr the kernel might reserve a space of RAM for your GPU (Not your iGPU) so it can map the memory and make it easier to move the textures, assets, etc to and from VRAM.
>>
>>
>>
>>
File: 1753239456354496.png (7.4 KB)
7.4 KB PNG
>>108638810
Works on my Linux machine
>>
>>
>>
>>108637757
On my system Windows reports 15.2 GB in task manager as available
On Linux it reports 14.9 GiB available in system-monitor and 15323752K/15986300K available in dmesg, and 15582212 in free
15986300K is 15.2 GiB
15582212, is 14.86 GiB, which rounds up to 14.9 GiB
In Windows 1KB = 1024 bytes, so I think Windows is just reporting your total memory as usable while Linux reports accurately.
>>
>>
>>
File: 67.2 GB ram.png (7.6 KB)
7.6 KB PNG
gnome system monitor reports the ram usage in GB (not GiB) and unlike the mate system monitor it also reports how much is being utilized as cache.
>>
File: 1756169676396342.png (4.4 KB)
4.4 KB PNG
>>108639512
I paid for 16GB just like it's advertised
>>
>>
>>
File: GSM.png (25.7 KB)
25.7 KB PNG
>>108639517
Then change it to GB.
>>
>>
>>
>>
>>
>>
>>
File: 200MB missing.png (17.3 KB)
17.3 KB PNG
>>108637930
>>108639803
Because it isn't.
>>
>>
>>
>>
>>108638859
eviction exists and mappings will scale down with ram pressure. these things aren't static. unless you're nearly out of ram worrying about these numbers is retarded, and complaining without actual knowledge of how the kernel works even more so
>>
>>
>>
>>
>>
>>108639929
Because you didn't buy 64 GiB of memory but 63.8 GiB.
Windows and memtest report your TOTAL memory in GiB (1 GB = 1 GiB in those) as available.
Linux is reporting 63.8 GiB, minus allocations for BIOS, kernel, and other shit, as available memory.
>>
>>
>>
>>
>>108640106
I had someone in reddit claim that it would be bad for stability to let you actually access all your ram and have system processes potentially be moved to a page file.
But as far as i have seen the stability in windows 10 is fine even if you use like 63 GiB of ram. The only problem is the reduction of the SSD lifespan.
>>
>>108640034
1238304 what? It defaults to KiB. If so that's pretty fucking big for the radix tree. AFAIK, its only used for key-value lookups (think hashtable without the hashing). Not sure what module in the kernel is using so much but it feels wrong. For reference mine is around 140 MiB on 32 GiB.
>>
>>
>>
>>108640163
Let me just say that's not typical. My workstation uses btrfs which by default uses a ton of kernel space memory for caching. My laptop is in the 200MiB range for the whole kernel. What distro is this? What filesystem are you using for your partitions?
>>
>>108639975
>radix_tree_node is the main cuprit
well it looks like the right thing to tweak is vfs_cache_pressure, then
question is, what are you running where that extra 1.2gb out of 64gb will actually make a difference? you'll still be running oom and your system will continue to freeze anyway
now admit this thread was just bait
>>
>>
>>
>>
>>
>>
File: 67.2 GiB.png (7.4 KB)
7.4 KB PNG
>>108640216
Another Dunning-Kruger case.
>>
>>
>>
>>
>>
>>108640882
Sounds like you don't need help then. You want people to go "Bill Gates-sama... I kneel"
But I was curious if this is an issue, since I only have 14.8 GiB of RAM and figured it was because the used laptop had 2 shitty 8GiB sticks or somethiing.
What distro are you using?
>>
>>
>>
>>108641030
We had a person earlier who could only utilize 30.45 GiB out of the 32 GiB they had paid for which is worse than our cases but even in your case it's still pretty bad since you really need all ram you paid for if you only have 16 GiB physical ram.
The issue is almost certainly the linux kernel itself rather than anything else. It might be that this cannot be fixed without rewriting parts of the kernel itself (working for free so valve can benefit from it).
>>
>>
>>108637757
If you don't install proper drivers the system may reserve RAM for the system to deal with those components in a basic level. You probably got a bunch of missing drivers and that's what you got. Same shit happens on windows.
>>
>>
>>
>>
>>
>>
>>108641449
It's sadly to be expected with these non-profit open source projects.
Because microsoft is a private centrally controlled company with a lot of resources they are able to put effort and make it work fine even if you use say 63 GiB out of 64 GiB by simply having system processes move to the page file.
Linux instead is fragmented where people are expected to work for free and there is no real coordination and people are convinved doing things in the old inefficient way is necessary and people who try to claim otherwise are shut down. You get the typical stupidity of crowds where instead of fixing real problems defenders of the dysfunctional status quo resort to misinformation and gaslighting.
>>
>>
>>
>>
>>108637930
66935632K (KiB) is available to Linux, or 68,542,087,168 bytes. Like all OSes that run on x86-64, the default page size is 4096 bytes, which is a property of the hardware. So, you have 16,733,908 pages. Linux needs a 'struct page' and PTEs (page table entries) as well as some other metadata that comes out to about 92 bytes per page or 1,539,519,536 bytes, or about 1,503,437 KiB, which is about 1% less than the "1517888K" value in your dmesg output. In general, you should expect about 2% of your memory to be used in keeping track of your other memory, so this is about right. Any OS that needs to use the MMU to map pages needs this bookkeeping, it's just that Linux doesn't lie to you about it.
>>
>>108641861
>implying that the entries aren't sparse to combat this exact issue
>implying that the number of entries has anything to do with the physical capacity, not the size of the virtual address space
Try more like 0.2%
>>
There are a lot of bad attempts to explain it but it is likely iGPU reservation.
Even when you have a dGPU as well, it's possible to switch between integrated and dedicated while the system is running or run both at the same time, so unless you have actually disabled the iGPU in BIOS it may still reserve RAM to use for it.
ZRAM is also worth checking.
>>
>>
>>
>>
>>
>>
>>
>>
File: IMG_0622.jpg (231.3 KB)
231.3 KB JPG
>>108642178
Ask google AI
>linux kernel struct page overhead per 4096 byte page
>pte overhead per 4096 byte page linux
>what besides struct page and pte overhead uses reserved memory linux
The rule of thumb is 2% when running maxxed out. You don't have to take my word for it, if you want see picrel gAyI
>>
>>
>>
>>
>>108642209
>>108642249
Ask stupid questions get answer you don't like...call them transgender?
>>
>>108637757
post the output ofsudo dmesg
paste.debian.net
you won't though because for one thing you know what the problem is and are expecting a random internet user to use the process of divination to tell you what command to run to fix this problem instead of even trying to be facetious about it.
>>
>>
>>
>>
>>
>>
>>
>>
>>108642287
Memory: 65373456K/66935632K available (20562K kernel code, 2951K rwdata, 16740K rodata, 4776K init, 4600K bss, 1517888K reserved, 0K cma-reserved)
Don't know if it would be safe to post the full output and this is also not a tech support thread.
From what i have read the amount of memory reserved by the kernel is normal given the amount of ram i have.
>>
>>108642200
Seems like the Struct Page is indeed the biggest problem and that windows doesn't have the same issue.
The amount of gaslighting and misinformation i have gotten when i have asked about this problem indicates to me that this is a linux specific problem (windows does let me utilize up to 63.8 GiB after all).
Seems like you can reduce it in linux but this is badly documented and may cause problems.
https://blogs.oracle.com/linux/minimizing-struct-page-overhead
>>
>>
>>
>>
File: linux-inefficient.png (122.7 KB)
122.7 KB PNG
>>108643658
According to grok the windows equivalent takes wastes 25% less memory by default.
>>
>>
>>108637757
Doesn't happen on my 4GiB Debian+XFCE install, I get 4GiB on both Windows and Linux. Skill issue.
>>108640216
He does indeed have 64 GiB of ram retard. This is RAM, not a mechanical hard drive.
>>108640714
He is making a tech discussion thread, which is what the board is for, not a tech support thread.
>>
>>
File: Screenshot From 2026-04-20 11-52-26.png (8.6 KB)
8.6 KB PNG
>>108637757
I seem to have the opposite problem...
>>
>>
>>
>>
>>
>>
>>108645754
I meant 3.9 GiB on both, brainfart. But yes, still a giant skill issue. Inspect /proc/iomem and find out why. Maybe post it here.
>>108645810
He is discussing an actual topic on how linux apparently reserves more memory for kernelspace on his puter, which is a very valid discussion. Plus, he's definitely slightly smarter than the average /g/ poster, which is a welcome rarity given that defying all statistics, the average /g/ user manages to be significantly dumber than the average /g/ user somehow.
>>
File: Screenshot From 2026-04-20 12-42-47.png (9 KB)
9 KB PNG
>>108645888
you're right, I'm retarded.
>>
>>
>>
>>
>>108646002
It's hard to find any good information on how to actually reduce the amount of ram reserved by the kernel.
The biggest culprit seems to be the "Struct Page" which does grow linearly with the amount of ram you have (which is pretty bad in my case since i have 64 GiB of DDR5).
>>
>>108646281
Do you want the kernel to work? It needs RAM. THE MORE YOU HAVE THE MORE IT NEEDS.
Bitches in 2038 will be like "I LOST 16GB OF RAM" nigga you have 1TB of RAM stop sweating the small stuff. Yes, 16GB is a lot right now, but in a future context where people have terabytes of RAM it will be insignificant.
>>
>>
>>
>>108646308
The funny part is that if Linux did userspace memory accounting in units of (page_size + overhead, e.g., 4096 + 92 == 4188) there'd be no "problem" because the moment a process used 1 byte of the page, they'd get charged for the full Hitler. But since Linux devs are more interested in "how many regular hw pages can I mmap and actually use" it makes more sense to account like Linux does.
The problem is rolling up developer info to userfaggot GUI info because users are no longer predominantly actual devs.
>>
>>108637757
>Has 64GB of ram. Only uses half of it. Doesn't want his OS to reserve 1GB ram in case it needs it
You really think your games or whatever you are running is more important than the system that allows you to run said programs?
>>
>>
>>108647105
You are literally retarded. This is why generations of people are blackpilled on teaching anyone anything; faggots like you are best off completely uninformed so at least you're not mostly uninformed, like you are now. But go get 'em faggot.
>>
File: image.png (67.8 KB)
67.8 KB PNG
>>108639976
Is this normal? I have 64GB RAM and a 4TB SSD.
>>
>>108647105
Linux and the NT kernel are both doing similar things by reserving ram for kernel needs. This is separate and different from hardware ram reservation. The only difference is that Linux is transparent in how it reports this information to you. You should be more upset at Microsoft for having misled you and wasting the past 24H of your time