Question: I have an Intel Core i7 3930K with 6 CPU cores. Now, I understand that every of that cores can handle 2 separate threads. That makes 12 virtual cores - which I can see using my system monitor (see screenshot below).

But when I create a virtual machine using the VirtualBox software from Oracle, I suddenly can allocate *24 CPUs* to that machine. How so?

[![enter image description here](https://i.stack.imgur.com/EJCLW.png)](https://i.stack.imgur.com/EJCLW.png)

So, what does that mean? Are there actually 24 cores - or is VirtualBox wrong?

And what happens if I allocate for example 4 cores - how many are really added to the virtual machine?

Answer: 
If you allocate 4 cores you get 4 cores in the VM. However almost all the time you're better off just allocating 1 because you add a lot of overhead every time you add another core.

You can have a maximum of 5 cores in your case, if you go over that into the red area your virtual machine will become unstable.

Virtual box reccomends the maximum number of cores you use should be n-1 of your physical cores. Hyper-Threading does not count.

[This thread on the virtual box forums supports this.](https://forums.virtualbox.org/viewtopic.php?f=6&t=35256)
The processor i7 3930K has VT-x.

> 
> Intel® Virtualization Technology (VT-x) allows one hardware platform
>  to function as multiple “virtual” platforms. It offers improved
>  manageability by limiting downtime and maintaining productivity by
>  isolating computing activities into separate partitions.
> 
> 
> 

That means you're able to simulate several more CPUs than the threads it can handle, thus seeing a higher number of CPUs available when using a Virtual Machine.