Can you create a multi-SMP virtual machine that executes on multiple sockets? For example, can I create a 4-SMP virtual machine on an ESX server v3.5 that is running on a dual-socket dual-core server without using hyper-threading? If so, will the virtual machine execute on the cores in both sockets?
Yes you can. Multi core CPU's are treated as multiple CPU's - so two dual cores will be seen as four pCpus, and the vCpu's will be scheduled across the available processors.
H.
To go a bit further - ESX is smart about this to, and will schedule both vCPUs onto the 2 cores on the same chip if possible...
--Matt
Yes, in your example, your Host has 4 Physical CPUs (pCPU). If you then create a Virtual Machine with 4 Virtual CPUs (vCPU) ESX will schedule all for pCPUs when that Virtual Machine requires CPU resources.
However, be aware that the processing in that example will have to traverse sockets, across a slower path than it would be to use 2 vCPUs and allow ESX to schedule the processing to occur on a single Dual-Core pCPU socket.
Also, be aware of possible resource contention with over-assigning vCPU to pCPU. If you are going to create a Virtual Machine configured to use all of the pCPUs, it increases the possiblity of resource scheduling contention with any other Virtual Machines vCPUs.
This may also give you some additional information: http://www.vmware.com/pdf/vi3_301_201_resource_mgmt.pdf
If you found this or other information useful, please consider awarding points for "Correct" or "Helpful".