Remix.run Logo
Linux Page Faults, MMAP, and userfaultfd for faster VM boots(shayon.dev)
58 points by shayonj 5 days ago | 4 comments
anlsh 3 days ago | parent | next [-]

Oh neat, a post I actually know something about! I worked a lot on userfaultfd performance for GCE's live migration post-copy a couple years ago. Or more specifically, I worked on mechanisms to avoid it entirely- due to lock contention in the kennel, faults become veeeerry slow as the number of vcpus scales, and as it happens VMs these days can have a lot of vcpus

shayonj 3 days ago | parent | next [-]

that's very interesting! I was noticing page vault storm on live migrations as well and I wonder if that's what you were running into / mentioning here regarding the lock contention

samsudin 3 days ago | parent | prev [-]

[dead]

dataflow 3 days ago | parent | prev [-]

> Userfaultfd is a Linux mechanism, available since kernel 4.3, with additional event features like non-cooperative mode and fork/remap/remove tracking added in 4.11, that lets a userspace thread intercept and handle page faults.

Is this the same feature Windows has had forever, or is there more to it?