Advanced Parallel Memory Virtualization
summary
Proposal pre-constructs pre-populated page tables so guest vCPUs use host-built mappings and avoid page-fault VM exits, allowing lockless PTE R/W/dirty updates and removing the MMU-lock serialization. A 32 vCPU, 64 GB guest with each vCPU dirtying 2 GB shows 4k fills drop from ~18–21s to ~2–2.5s (≈9x) and 2 MB cases cut runtime by ~1.5×. Requires EPT/NPT, pre-pinned guest memory (no overcommit), SMM unsupported; post-copy migration not yet supported but plan uses madvise to induce userfaultfd to re-enable fetching.
AI-written summary · about
chapters (13)
- 0:00Introducción
- 0:13Tencent Cloud
- 1:07Background
- 2:15Current EPT setup
- 2:55Bottleneck
- 4:55Fast pin guest memory and setup page table
- 5:37Live migration support
- 6:14Update page entry with mmu_lock
- 6:30Lockless access
- 7:41Benefit for Parallel Memory Virtualization
- 8:10Limitation
- 9:05Future works
- 10:19Link to the source code
related talks
26mCooperative DMA in a memory-oversubscribed environment
22mPreserving guest memory across kexec
31mPVH Technical Deep Dive
26mHardware Assisted PMU Virtualization
30mNested Virtualization (X86) Part II
36mShared Virtual Addressing for High Performance Arm Infrastructure Platforms
30mNested Virtualization (X86) Part I
21mPreview: Operating Systems
