For your intial question the answer is
Windows 2008 CPU limit ( socket) with editions
Standard: 4
Enterprise: 8
Datacenter: 64
No limit for logical cores only limit for sockets
you can configure 4 vcpu and increase the number of cores as the KB provided.
For your current confusion.
Note: Ensure that the number of vCPUs is divisible by the number of cpuid.coresPerSocket in the
virtual machine.That is, when you divide the number of vCPUs by the number of cpuid.coresPerSocket,
it must return an integer value. For example, if your virtual machine is created with 8 vCPUs,
coresPerSocket can only be 1, 2, 4, or 8.
From virtual machine
1 vcpu = 1 socket
so 1 socket(vCPU) can have 1, 2, 4 or 8 cores.
if you have 2 vCPU you can configure 2 core or 4 cores or 8 cores.
Do Not compare with physical machine sockets and processors. the point clearly states that you need to divide the number of core with number of vcpu and not with physical cores you have.
Award points for the helpful and correct answer by clicking the below tab :smileyhappy: