Windows limits of sockets
阿新 • • 發佈:2017-07-01
分享 範圍 ber 支持 net ted 文檔 stc read
有的操作系統的license會限制socket的數目 ,如Windows Desktop最多支持2個Socket,Windows Server最多支持4個Socket。另外一般地在不同的core上的2個threads的性能會比2個在同相core上的threads的性能要好。同時vCPU topology, libvirt將一個vCPU在虛機中視為: 1 socket with 1 core and no hyper-threads
簡要敘述一下Openstack生成CPU topology的過程:
- 根據image.metedata得到虛機期望的和最大範圍的(Socket、Core、Thread)
- hw_cpu_max_sockets、hw_cpu_max_cores、hw_cpu_max_threads指定範圍
- hw_cpu_sockets、hw_cpu_sockets、hw_cpu_sockets指定期望
- 根據flavor.vcpu 列舉出所有的socket/core/thread 即vcpu=socket*core*thread
- 利用指定的期望參數和高性能篩選出合適的socket/core/thread組合 即Thread盡量分配到不同的Socket和Core
Windows limits the number of sockets 的解決方法:
Openstack版本: Mitaka
指定Windows image支持的hw_cpu_sockets最大值,如下圖:
參考文檔:
http://blog.csdn.net/quqi99/article/details/50988089
https://wiki.openstack.org/wiki/VirtDriverGuestCPUMemoryPlacement
Windows limits of sockets