Dynamic vCPU priority boosting in KVM for latency sensitive workloads
summary
A prototype for x86_64 implements host–guest communication using shared memory and hypercalls so the guest signals latency intent and the host temporarily boosts vCPU threads to RT (SCHED_RR, prio 8) and synchronously unboosts on context switch. Tests on an Intel N4020 show cyclictest and OBO audio-glitch counts drop versus vanilla, and boosts avoid the host damage caused by static RT. Boosting is tunable per-VM, uses async boost paths and throttles/timeout guards against rogue VMs.
AI-written summary · about
chapters (12)
- 0:00Introduction and agenda
- 1:03Problem with VM latency
- 3:30Root cause analysis
- 4:54Solution overview
- 7:22Implementation details
- 18:41Hypercall overhead and concerns
- 21:06Interrupt handling
- 25:38Performance evaluation
- 30:57Future use cases
- 35:17Upstreaming and security
- 41:15Security and throttling
- 45:00Q&A
related talks
09mKVM Latency Performance Tuning
39mEvaluation of PREEMPT_RT in Virtualized Environments
28mCPUfreq/sched and VM guest workload problems
21mPreview: Operating Systems
26mLessons Learned: Optimizing KVM Performance for EHR Systems
11mAdvanced Parallel Memory Virtualization
25mChallenges in Supporting Virtual CPU Hotplug on SoC Based Systems (like ARM64)
31mKVM Nested Virtualization: Workings and Usecases
