在虚拟化平台进行应用测试时,应用在CPU核数一样的虚拟服务器上性能表现出较大的差异。虚拟机CPU分配核数时需要考虑哪些因素?超线程?主频?
1、用的是什么虚拟服务器? VMware还是PowerVM的?还是其他的?
2、假如是VMware,用的是ESX/vSphere还是VMware Workstation,二者架构不同,性能不同,pc上的VMware Workstation不是裸金属模式,性能不好。
3、你理解的虚拟服务器的核数,不知是否正确。比如说VMware上,你看到的2个core,其实是x86 CPU的一个core中的一个超线程。
如果这个x86 CPU一个core是两个线程,那么虚拟机中的两个core只相当于物理的一个core。当然,这是你能够完全抢占的情况下。如果没有完全抢占,那就更小了。
如果是PowerVM的虚拟机,CPU的概念可以参考我的文章