Page 1 of 1

How to allocate more than 1 CPU

Posted: 16. Apr 2013, 04:41
by Zeca
hi all. I'm using VBox 4.1.12 on a low power Windows machine - 4GB RAM, with a 2core+HT atom cpu. No hardware virtualization is supported.

Although this is a slow cpu, it can run very light/basic VMs fairly smoothly.

The problem is that it's very easy for the VM to max out the available CPU resources, even though they never get past 25% of the actual physical cpu - this happens because the number of cpus that this version of VBox allows one to allocate to a VM when the host lacks hardware virtualization support is 1 cpu.
Is there any way to increase this number? Do more recent versions allow this?

thanks for your help.
Zeca

Re: How to allocate more than 1 CPU

Posted: 16. Apr 2013, 08:06
by noteirak
AFAIK, without hardware virtualization, it is not possible to have more than one virtual CPU.

Re: How to allocate more than 1 CPU

Posted: 16. Apr 2013, 11:18
by mpack
And in any case, with a dual core CPU you need to leave one core for the host.

Re: How to allocate more than 1 CPU

Posted: 16. Apr 2013, 15:00
by Zeca
The host OS "sees" 4 CPUs, even though there are only 2 physical CPUs, and 2 from HT.
The problem with only allocating 1 CPU to the virtual machine, is that the host never lets the VM get more than 25% of the CPU resources - that is the maximum load, with the VM's CPU at 100%.

Re: How to allocate more than 1 CPU

Posted: 16. Apr 2013, 15:18
by mpack
Hyperthreading doesn't count in this context - search for previous discussions of that. Proceed as if you have one CPU, two cores.

The percentage load is just a number reported by the OS, and yours sounds like it is reporting it wrong. You only have 2 cores, so if one is maxed out then it should be reported as 50% (or 100% of that core). 25% is a bug caused, as you say, by the CPU claiming to the OS that it has more cores than it actually has.

In any case this discussion is moot. As Noteirak has said, you need VT-x in order to assign multiple cores to a guest.