Huge Pages and Page Faults

The cluster centers on operating system memory management, particularly using huge pages to mitigate frequent page faults, TLB flushes, and inefficiencies in large allocations, with discussions on Linux kernel behaviors like lazy allocation and page zeroing.

📉 Falling 0.5x DevOps & Infrastructure
3,123
Comments
20
Years Active
5
Top Authors
#8251
Topic ID

Activity Over Time

2007
1
2008
7
2009
9
2010
83
2011
61
2012
86
2013
66
2014
167
2015
103
2016
192
2017
167
2018
220
2019
208
2020
229
2021
232
2022
282
2023
416
2024
253
2025
317
2026
24

Keywords

RAM CPU SSD ARM AIX less.html VMA damore.org MB VM pages memory page faults kernel os disk cache virtual gift

Sample Comments

SonOfKyuss Dec 20, 2025 View on HN

Doesn’t Linux support large page allocations for just this type of situation?

lokopodium Apr 16, 2018 View on HN

This is almost like paged memory with faulty cache write-back.

guerrilla Dec 17, 2022 View on HN

How is that possible without page fault exceptions or equivalent?

zingermc Jun 20, 2019 View on HN

What if the OS could dedupe pages?

ori_b Jul 3, 2023 View on HN

No, huge pages wouldn't help. They would change when the TLB gets flushed, but the flushes would still be there.

fwsgonzo Dec 7, 2022 View on HN

That's unfortunate. I wrote a VMM that tries to back memory with hugepages (even the guests page tables). It's making a difference!

twoodfin Jun 15, 2016 View on HN

I'm surprised this article doesn't mention one typical solution to the problem of massive numbers of expensive page faults for large allocations: Pages bigger than 4K, which are supported on most modern operating systems. On Linux they go by the name "huge pages":https://www.kernel.org/doc/Documentation/vm/hugetlbpage.txt

saagarjha Apr 26, 2025 View on HN

The same OS kernel that zeros out pages before handing them back to me?

Const-me Jun 30, 2022 View on HN

The hardware and modern OSes support large 2MB pages, and huge 1GB pages. They trim 1 or 2 levels from that tree, respectively. With huge pages a single node of that tree addresses 512GB of memory, for most practical applications you’re pretty much guaranteed to translate these addresses without TLB cache misses.There’re some limitations about them, on Windows the process needs a special security privilege, also these pages are never swapped to a page file. But still, AFAIK when programmers r

noselasd May 1, 2014 View on HN

You don't need to couple memory pages with disk blocks.