The Wiert Corner – irregular stream of stuff

Jeroen W. Pluimers on .NET, C#, Delphi, databases, and personal interests

  • My badges

  • Twitter Updates

  • My Flickr Stream

  • Pages

  • All categories

  • Enter your email address to subscribe to this blog and receive notifications of new posts by email.

    Join 2,484 other followers

Archive for May 6th, 2011

VMware Workstation and multi-core hosts/guests

Posted by jpluimers on 2011/05/06

With the gaining popularity of Desktop systems with multi-core processors, it becomes interesting to use multi-core CPU guests in VMware workstation.

Right now, Intel Core i3 through i7 processors can provide from 2 to 6 cores, some cores even supporting hyper-threading and providing 12 virtual cores using a single physical processor.

Does it make sense now to run all your VM guests with multiple virtual cores / vCPUs?

On the VMware forums and knowledge base, there are many threads and articles with information on vCPUs.

The consensus is that VMware workstation can take longer to schedule a synchronized set of cores for a VM than VMware ESX(i) has, and the host OS needs CPU cycles too.

The reason is that VMware workstation needs the underlying host Operating System for that, whereas ESX(i) has it’s own kernel.

In the VMware workstation 7 beta, under some circumstances, adding more vCPUs actuall made the guest run slower (this has been fixed).

You need to be careful when vCPUs in the guest compete with pCPUs in the host; it can lead to frequent freezes in the guest.
The rule of the thumb is that you should not use more than 50% of the host pCPU cores as guest vCPUs.

So the best is to start with one (1) vCPU, and only crank it up when needed.
Take into account however that for Windows XP you will need to  change the HAL to support multiple CPUs, which can be a pain.

In some cases it can pay off big to increase the number of vCPUs, especially when they are actually used.

Another thing you need to be aware of is that modern CPUs van vary their clock speed, now even depending on the number of cores used. In the past this had influences on timekeeping, but not so any more with modern Core i# processors.

Finally, with the increase of hard-disk space, people use snapshots more often. This can dramatically decrease the performance, as the number of open files per VM increases.

I hope this helps you choosing the number of vCPUs in your guest.

–jeroen

Note: Both VMware ESXi and VMware Workstation 7.1+ can even support vCPU with multiple cores to help cope with guest OS CPU licensing limitations: set the cpuid.coresPerSocket property in your vmx for that.

Posted in Power User, VMware | 1 Comment »

 
%d bloggers like this: