Want to protect your cyber security and still get fast solutions? Ask a secure question today.Go Premium

x
  • Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 320
  • Last Modified:

VMWare, Tuning options

In previous posts, many have siad that when you allocate resources to a VM, that allocating too many resoruces will slow it down

Why is that

... and does this work for both vCPU and Memory, or just vCPU

Thanks
0
Los Angeles1
Asked:
Los Angeles1
1 Solution
 
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
Memory - Too much memory, or lack of memory on host, causes the Virtual Machine to swap to disk. The Swap-In function of the virtual machine causes performance issues because of the latency of the datastore (disks!).

vCPU - too many vCPUs, vSMP (virtual symmetric multiprocessing), if your virtual machine cannot take advantage or have any applications that can take advantage of multiple processors, e.g. Exchange or SQL, adding additional processors, can slow a Virtual Machine down, vSMP is better now in ESXi 5.0, but still exists.

It's not always advantageous to add more vCPUs to a Virtual Machine because of the VMware CPU Scheduler.

ALL Physical CPUs and Physical Cores are shared between the ESX/ESXi Host Server and ALL of the virtual machines and each of them need sufficient CPU cycles to work with the performance you would expect. If you assign multiple vCPUs to a VM the CPU scheduler has to make sure the number of virtual CPUs is available at the same time to execute commands.

Example, assuming you assign 8 vCPUs to a virtual machine, the CPU scheduler would have to wait until 8 cores are available. To achieve this it has to pause the first cores until the 8th one is available. During this time the paused cores are not available for other processes.

In addition to that, more vCPUs usually don't add much performance to a VM unless the applications running on the VM are optimized to use multiple CPUs.

see http://www.vmware.com/resources/techresources/10131

So this is why, we often advise to start with 1 vCPU, check performance, add another if required, and only if required, or remove it.

Most VMware Administrators make the mistake of OVER ALLOCATION of vCPUs and Memory, because they CAN, not because the VM requires it.

VMware vSphere 4: The CPU Scheduler in VMware ESX 4
http://www.vmware.com/files/pdf/perf-vsphere-cpu_scheduler.pdf

Best Practices Using VMware Virtual SMP
www.vmware.com/pdf/vsmp_best_practices.pdf
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Tackle projects and never again get stuck behind a technical roadblock.
Join Now