How do I increase the Core for a CPU on a VM from 8 Core to 12 Core in vSphere?

I have been asked to increase the CPU's core on a VM. It currently has 8 cores total (see screenshot). If I need to increase it to 12 cores total, would I need to increase  "Number of virtual sockets" or "Number of cores per socket"? Also, what number do i need to input to get it to 8 cores total?


Also, how do i know if i have enough hardware resources on the ESX host to support the CPU core increase? I have embedded the following screenshot which show the ESX host that the VM reside on. Do I have sufficient amount of hardware resources?

Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

David Johnson, CD, MVPOwnerCommented:
the machine has to be powered down. You have 2 physical cores, so you'd increase the # of cores/socket
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
Unless enabled for Hot Plug CPU and Memory, which your VM is not, you must switch it off, and change the numbers.

You have a total of 12 cores per socket in the host.

I would recommend, that you select and use Virtual Sockets ? (Cores or Sockets give us the same performance, unless you have a specific license requirement, to only use Cores, I would recommend sockets!)

Do you really need to use a VM with 12 vCPUs, this seems excessive for most VMs ? especially when you only have a VM with 8GB.

vSMP (virtual SMP) can affect virtual machine performance, when adding too many vCPUs to virtual machines that cannot use the vCPUs effectly, e.g. Servers than can use vSMP correctly :- SQL Server, Exchange Server.

This is true, many VMware Administrators, think adding lots of processors, will increase performance - wrong! (and because they can, they just go silly!). Sometimes there is confusion between cores and processors. But what we are adding is additional processors in the virtual machine.

So 4 vCPU, to the VM is a 4 Way SMP (Quad Processor Server), if you have Enterprise Plus license you can add 8, (and only if you have the correct OS License will the OS recognise them all).

If applications, can take advantage e.g. Exchange, SQL, adding additional processors, can/may increase performance.

So usual rule of thumb is try 1 vCPU, then try 2 vCPU, knock back to 1 vCPU if performance is affected. and only use vSMP if the VM can take advantage.

Example, VM with 4 vCPUs allocated!

My simple laymans explaination of the "scheduler!"

As you have assigned 4 vCPUs, to this VM, the VMware scheulder, has to wait until 4 cores are free and available, to do this, it has to pause the first cores, until the 4th is available, during this timeframe, the paused cores are not available for processes, this is my simplistic view, but bottom line is adding more vCPUs to a VM, may not give you the performance benefits you think, unless the VM, it's applications are optimised for additional vCPUs.

See here

see here

also there is a document here about the CPU scheduler

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
joukiejoukAuthor Commented:
How do we justify/calculate that we have enough resources on the VM Cluster to failover if one of the physical host hardware is down?
Andrew Hancock (VMware vExpert / EE MVE^2)VMware and Virtualization ConsultantCommented:
Add up all the memory, in the total number of VMs, does a single host have enough memory for all your VMs ?

Memory is often the bottleneck not CPU.

But if you work on 5-6 VMs per per Host Core.

You can also check how many slots are in use in the cluster as well.
vcpu is not a CPU core. You can have max 32 or 64 idle vCPUs per CPU core on host machine.
do not change "cores per socket" away from 1 unless you want to use vNUMA
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.