Link to home
Create AccountLog in
Avatar of Go-Bruins
Go-Bruins

asked on

ESXi 5.5 - CPU's and sockets

Hi all,

I think I'm a little unclear on the assigning of vSockets and vCPU's.

I have a home lab computer that has one AMD 8350 (one socket and 8 physical cores). Let's say I'd like to split its resources between two VM's.

On VM one, I've specified:

"Number of virtual sockets" = 1  
"Number of cores per socket" = 4

Yet when I check the task manager, it seems I only have 1 CPU. What am I missing?

User generated image
Thanks in advance.
ASKER CERTIFIED SOLUTION
Avatar of Andrew Hancock (VMware vExpert PRO / EE Fellow/British Beekeeper)
Andrew Hancock (VMware vExpert PRO / EE Fellow/British Beekeeper)
Flag of United Kingdom of Great Britain and Northern Ireland image

Link to home
membership
Create a free account to see this answer
Signing up is free and takes 30 seconds. No credit card required.
See answer
Avatar of Go-Bruins
Go-Bruins

ASKER

I think I'm beginning to understand.

So hypothetically, if I wanted to run 4 VM's, I'd specify two vSockets and one vCore per VM, correct? This is assuming that they share similar workloads.

I read on another thread that you were involved in that going beyond two vSockets gets your minimal returns?

Finally, the ESXi warning note says "Changing the number if virtual CPU's after guest OS is installed....unstable." Can I ignore that warning for this purpose?

Thanks.
So hypothetically, if I wanted to run 4 VM's, I'd specify two vSockets and one vCore per VM, correct?

It does not really work like that splitting up the physical CPU, if that's your thinking, behind 8 physical cores, how many VMs can I run.

We work on 5-6 VMs per Core, assuming 1 vCPU per VM.

Number of processors, depends on what the VM is doing, whether the applications are vSMP aware.

It's not linear, e.g. 2 vCPU is not double 1, and four is not double 2 etc

Finally, the ESXi warning note says "Changing the number if virtual CPU's after guest OS is installed....unstable." Can I ignore that warning for this purpose?

Yes, VMware vSphere does NOT no what the effect will be, so it's a warning, just in case it breaks your VM.

Most modern OS, support this now plug and play.
Great info - thanks.

So if I'm reading your post right, I could host more VM's than the physical limitations of my AMD 8-core CPU.

So for example:

I could run 5 VM's and give them all 2 vSockets / 1 vCore, and ESXi is smart enough to allocate CPU resources on the fly (assuming the OS is vSMP aware)?
Something puzzling going on...

I've specified 3 vSockets, but see only 2 in the task manager.

User generated image
Yes, that's why we use hypervisors.

CPU is not often the bottleneck memory and storage is!

I could run 5 VM's and give them all 2 vSockets / 1 vCore, and ESXi is smart enough to allocate CPU resources on the fly (assuming the OS is vSMP aware)?

Yes, that's what a hypervisor does.

But be warned, if all VMs, all decide to use 100% CPU on all cores, it may be too much for your host!

e.g. I have a Dual Core 1.3GHz AMD Neo

it runs

3 VMs with 1 vCPU
1 VM with 2 vCPU

and that only uses 50% of the Host CPU.
SOLUTION
Link to home
membership
Create a free account to see this answer
Signing up is free and takes 30 seconds. No credit card required.