VMware Cloud Community
jkrishna
Contributor
Contributor

vCPU allocation to a VM

Hi,

Could anybody please clarify ,why we can only allocate powers of 2 (1,2,4) as number of processors to a virtual machine , why can't we allocate 3 virtual Processors to a VM.

Please excuse me if this not the correct question.

Regards

Jayakrishna.K

0 Kudos
11 Replies
Chris_S_UK
Expert
Expert

Just like in the physical world, the BIOS of the VM isn't designed to work with an odd number of CPUs.

0 Kudos
jkrishna
Contributor
Contributor

Hi,

Could u plz give me any doc, which explains why it is not supported in physical word.

Regards

Jayakrishna.K

0 Kudos
simmetje
Contributor
Contributor

Hi, we accidentally received an IBM x3850 with three Xeon 7140N CPU's. the dealer forgot to order one CPU. We installed ESX3.01 and it's working perfectly.

I'm not sure if Windows would recognize all three CPU's but ESX works fine. In this case an odd number of CPU's seems to be no problem....

Rob.

0 Kudos
jkrishna
Contributor
Contributor

Hi ,

So , what can we conclude , there are machines with 3 Physical CPUs in market??

Regards

Jayakrishna.K

0 Kudos
RParker
Immortal
Immortal

You can't do this in the real world either.

Digital IS binary. That's the reason. 3 CPU would not make sense, since you can't emulate this in a real world situation (unless a physical processor fails). you buy a processor or add a second processor and they would be identical, you can't even boot a machine without a matching pair of pretty much anything, memory, cpu, it's a binary system.

0 Kudos
RParker
Immortal
Immortal

No, I can't validate his claim, but I believe this is not a "real" situation. Maybe it's true, but in my most cases a board can't boot with only 1 memory in the slot, it needs 2. 2 CPU and if it has 4 sockets, it is expecting ALL 4 sockets to be populated.

Even if it did work, I doubt very seriously he has 3 CPU in his configuration, it probably shows 2 only and make the last one invalid, since it realisitcally is.

Besides, why are you trying to force 3 cPU anyway? If you need more CPU just add 4, why try to rewrite the program?

0 Kudos
RParker
Immortal
Immortal

read this web site or take a A++ class, that will give you the information you need.

0 Kudos
simmetje
Contributor
Contributor

Sorry guys, but it's really working with 3 CPU's. Currently hosting 24 VM's in a production cluster that hosts devellopers.

VC shows 3 CPU's working and 12 logical CPU's. (dual core and hyperthreading on).

Like I said, I did not try it with Windows but ESX3 run's fine.

NExt week we will add the 4th CPU that has arrived yesterday so I will try to make a screenshot this week.

Rob.

0 Kudos
virtualdud3
Expert
Expert

Well, 3 CPUs, each with 2 cores and hyperthreading enabled equals 6 CPUs cores/12 hardware contexts of execution.

The point being, "6" and "12" are both even numbers.



###############

If you found this information useful, please consider awarding points for "Correct" or "Helpful". Thanks!!!

############### Under no circumstances are you to award me any points. Thanks!!!
0 Kudos
gorto
Enthusiast
Enthusiast

This is such an intriguing story - I'm aghast!

My (basic) understanding is that a machine shouldn't get past POST with an odd number of sockets populated or at least the odd socket disabled.

I await the outcome .......

0 Kudos
virtualdud3
Expert
Expert

Yeah, even with an even number of CPU cores I'm still not convinced that the 3 CPU machine booting is kosher.

We'll wait and see.



###############

If you found this information useful, please consider awarding points for "Correct" or "Helpful". Thanks!!!

############### Under no circumstances are you to award me any points. Thanks!!!
0 Kudos