All hypervisors need to deal with CPU scheduling. All workloads running in a virtual machine must be scheduled for execution and the CPU scheduler handles this task with policies that maintain fairness, throughput, responsiveness, and scalability of CPU resources. In most cases, the CPU scheduler works well with no special tuning. However, a deeper understanding of the scheduler can help users troubleshoot some performance problems and implement best practices to get the most of a scheduling policy.
VMware has released a white paper that takes a detailed look at how the CPU scheduler works and how to fine-tune performance. Some of the topics include:
- Proportional co-scheduling
- Relaxed co-scheduling
- load balancing
- NUMA (Non-Uniform Memory Access) policies
This is an interesting read, especially about NUMA and vNUMA. And, at only 25 pages, it will not fry your brain too much.