CPU pinning was added to OpenStack Nova 3 years ago, but making it work correctly is still not trivial.
In this session, I will review NUMA/SUMA topology, CPU pinning types, pinning logic, Nova filters and guest VM boot process with CPU pinning. Finally, I’ll share lessons learned from real, live deployments with CPU pinning on telco apps and show how to effectively troubleshoot CPU pinning related problems.
Theoretical introduction to Linux kernel process scheduling, what NUMA adds to complexity of Linux scheduler and why? What problems CPU pinning resolves? How to configure OpenStack Nova to use CPU pinning and how does it work under the bonnet? And finally real examples how to verify that our VMs are pinned to CPU and how to troubleshoot related problems?
