Windows XP: bad SMP performance
Windows XP: bad SMP performance
Is this a known bug? In 4.3.2 the performance of my Windows XP guests just sucks if I use the ACPI Multiprocessor HAL. If I switch to the non-multiprocessor ACPI HAL, Windows XP is lightning fast. With the multiprocessor HAL, Windows XP is almost unusable! Even the installation took ages with 2 CPUs enabled.
In virtualbox's bug database I find many entries, but for ancient version of virtualbox. Has this problem been reintroduced with the rewrite in 4.3? Because I was happily using my Windows XP guest with 2 CPUs in virtualbox 4.2.x - or at least I think I was.
In virtualbox's bug database I find many entries, but for ancient version of virtualbox. Has this problem been reintroduced with the rewrite in 4.3? Because I was happily using my Windows XP guest with 2 CPUs in virtualbox 4.2.x - or at least I think I was.
-
michaln
- Oracle Corporation
- Posts: 2973
- Joined: 19. Dec 2007, 15:45
- Primary OS: MS Windows 7
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: Any and all
- Contact:
Re: Windows XP: bad SMP performance
It's a problem a few people have vaguely reported but we've not seen it and so far no one has given us a recipe to reproduce. Your report is a good example of "vague". What host OS? What running processes in the guest OS? What CPU utilization on host/guest?
Yes, there's "something". Magically it doesn't seem to affect developer systems.
Yes, there's "something". Magically it doesn't seem to affect developer systems.
Re: Windows XP: bad SMP performance
With SMP enabled, the installation of Windows XP SP3 tool about 30 minutes.
Without SMP enabled and I/O APIC disabled, the installation of Windows XP tool about 10 minutes.
That should be easier to reproduce than referring to some software running inside the guest.
It was an installation ISO from DreamSpark, and the harddisk was attached to an IDE controller using the host's I/O cache.
The guest had all virtualization stuff enabled - also PAE/NX. I'm not sure to quantify the host's CPU utilization as it varies heavily over the installation.
It seems to me, that especially I/O performance is degraded if SMP is enabled.
The host is a Linux machine with kernel 3.12.0 and virtualbox 4.3.2 installed.
The host's CPU is a Intel Core-i5 M540.
Without SMP enabled and I/O APIC disabled, the installation of Windows XP tool about 10 minutes.
That should be easier to reproduce than referring to some software running inside the guest.
It was an installation ISO from DreamSpark, and the harddisk was attached to an IDE controller using the host's I/O cache.
The guest had all virtualization stuff enabled - also PAE/NX. I'm not sure to quantify the host's CPU utilization as it varies heavily over the installation.
It seems to me, that especially I/O performance is degraded if SMP is enabled.
The host is a Linux machine with kernel 3.12.0 and virtualbox 4.3.2 installed.
The host's CPU is a Intel Core-i5 M540.
-
Martin
- Volunteer
- Posts: 2562
- Joined: 30. May 2007, 18:05
- Primary OS: Fedora other
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: XP, Win7, Win10, Linux, OS/2
Re: Windows XP: bad SMP performance
Your CPU has two cores.
You assign two cores to your guest for SMP.
So the host has no CPU cores for the rest of the system and it has to pause the guest for most administrative and background tasks.
You assign two cores to your guest for SMP.
So the host has no CPU cores for the rest of the system and it has to pause the guest for most administrative and background tasks.
Re: Windows XP: bad SMP performance
I have hyperthreading enabled. I know, it's not as good as four proper cores, but I guess the host has enough reserves to handle the "administrative tasks". Also, why do I not observe this performance drop with Linux or Windows 7 guests? Even my Windows 2000 guest doesn't seem to be affected. Only Windows XP becomes reaaaallly slow.Martin wrote:Your CPU has two cores.
You assign two cores to your guest for SMP.
So the host has no CPU cores for the rest of the system and it has to pause the guest for most administrative and background tasks.
Re: Windows XP: bad SMP performance
Update:
Let T denote the time from clicking the start button in virtualbox to seeing the windows desktop (the guest has auto-login enabled).
Let H denote the Windows HAL, C denote the number of guest CPUs, and A denote whether I/O-APIC is enabled.
If C=2, A=yes, and H=ACPI-Multiprocessor, then T=25 seconds.
If C=1, A=yes, and H=ACPI-Multiprocessor, then T=15 seconds.
If C=1, A=yes, and H=ACPI-PC, then T=10 seconds.
(Note: the ACPI-PC HAL doesn't use APIC, as far as i know)
(Note 2: the Windows XP guest uses Intel AHCI driver 10.1.0.1008)
Are you sure that would be kind of slow down that would be expect?
For fun, I will test VMWare Player now.
Let T denote the time from clicking the start button in virtualbox to seeing the windows desktop (the guest has auto-login enabled).
Let H denote the Windows HAL, C denote the number of guest CPUs, and A denote whether I/O-APIC is enabled.
If C=2, A=yes, and H=ACPI-Multiprocessor, then T=25 seconds.
If C=1, A=yes, and H=ACPI-Multiprocessor, then T=15 seconds.
If C=1, A=yes, and H=ACPI-PC, then T=10 seconds.
(Note: the ACPI-PC HAL doesn't use APIC, as far as i know)
(Note 2: the Windows XP guest uses Intel AHCI driver 10.1.0.1008)
Are you sure that would be kind of slow down that would be expect?
For fun, I will test VMWare Player now.
-
michaln
- Oracle Corporation
- Posts: 2973
- Joined: 19. Dec 2007, 15:45
- Primary OS: MS Windows 7
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: Any and all
- Contact:
Re: Windows XP: bad SMP performance
Are they all 32-bit like XP?skoehler wrote:Also, why do I not observe this performance drop with Linux or Windows 7 guests?
Is it SMP?Even my Windows 2000 guest doesn't seem to be affected.
Re: Windows XP: bad SMP performance
Yesmichaln wrote:Are they all 32-bit like XP?skoehler wrote:Also, why do I not observe this performance drop with Linux or Windows 7 guests?
Yes.michaln wrote:Is it SMP?Even my Windows 2000 guest doesn't seem to be affected.
Anyhow: I oberserve the same performance issue with VMWare.
With the ACPI-Multiprocessor HAL, even if the guest only has one CPU, Windows XP starts super slow (T=30sec).
But with with the ACPI-PC HAL, Windows XP almost starts as fast with virtualbox (T=12sec).
Re: Windows XP: bad SMP performance
I've also measured the startup time (from clicking the startbutton to seeing the user icons) of my Windows 7 32bit guest.
Regardless of whether the guest had 1 or 2 CPUs, the startup time was 13seconds (both for the ACPI multiprocessor HAL). With 4 guest CPUs the startup time was 16 seconds (also ACPI multiprocessor HAL). For some reason I couldn't boot without I/O-apic enabled even after switching the HAL.
Regardless of whether the guest had 1 or 2 CPUs, the startup time was 13seconds (both for the ACPI multiprocessor HAL). With 4 guest CPUs the startup time was 16 seconds (also ACPI multiprocessor HAL). For some reason I couldn't boot without I/O-apic enabled even after switching the HAL.
-
michaln
- Oracle Corporation
- Posts: 2973
- Joined: 19. Dec 2007, 15:45
- Primary OS: MS Windows 7
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: Any and all
- Contact:
Re: Windows XP: bad SMP performance
Okay, you're the second person saying the same thing. We are not observing such behavior, which means either our VMs are configured differently or there's different software installed inside the guest (potentially including Microsoft's own updates).skoehler wrote:Anyhow: I oberserve the same performance issue with VMWare.
We did find one problem that would affect Intel hosts, but that would affect XP performance only after the guest rebooted. I assume you see poor performance right away, so you must be seeing something else.
That's actually not too surprising... because the HAL itself very significantly changes how XP works. The added CPU(s) is then a relatively minor change.With the ACPI-Multiprocessor HAL, even if the guest only has one CPU, Windows XP starts super slow (T=30sec).
Re: Windows XP: bad SMP performance
Well, what are you using then? Are you using Windows XP without the latest updates installed? Maybe even without any service pack installed?michaln wrote:Okay, you're the second person saying the same thing. We are not observing such behavior, which means either our VMs are configured differently or there's different software installed inside the guest (potentially including Microsoft's own updates).skoehler wrote:Anyhow: I oberserve the same performance issue with VMWare.
Remember, that I mentioned that even the installation (with XP SP3 iso) would takes ages. So the patch in question would also be included in SP3.
I powered the VM off and then fired it up again each time to measure the startup time. So yes, it must have been a different issue.michaln wrote:We did find one problem that would affect Intel hosts, but that would affect XP performance only after the guest rebooted. I assume you see poor performance right away, so you must be seeing something else.
Most surprisingly, Microsoft seems to have done a much better job with the HAL in the Windows 7. Nevermind.michaln wrote:That's actually not too surprising... because the HAL itself very significantly changes how XP works. The added CPU(s) is then a relatively minor change.With the ACPI-Multiprocessor HAL, even if the guest only has one CPU, Windows XP starts super slow (T=30sec).
So how are we treating this? Two virtualization products exhibit the same behaviour. Is it a bug in both of them? Or should be blame Microsoft (a certain patch)?
Re: Windows XP: bad SMP performance
I was wrong. Windows 2000 also is affected as it seems. After switching the HAL and increasing the number of CPUs from 1 to 2, the startup time increased from 43sec to 55sec.
-
michaln
- Oracle Corporation
- Posts: 2973
- Joined: 19. Dec 2007, 15:45
- Primary OS: MS Windows 7
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: Any and all
- Contact:
Re: Windows XP: bad SMP performance
We normally use XP SP3 for testing, usually with all updates installed. We use official installation ISOs from MSDN.skoehler wrote:Well, what are you using then? Are you using Windows XP without the latest updates installed? Maybe even without any service pack installed?
Remember, that I mentioned that even the installation (with XP SP3 iso) would takes ages. So the patch in question would also be included in SP3.
OK, thanks for the confirmation. Just for reference, how exactly do you define "startup time"?michaln wrote:I powered the VM off and then fired it up again each time to measure the startup time. So yes, it must have been a different issue.
I'm sure supporting several very different HALs was just as much of a pain for Microsoft as for everyone elsemichaln wrote:Most surprisingly, Microsoft seems to have done a much better job with the HAL in the Windows 7. Nevermind.
I don't have enough data to say. I think the chance of both VirtualBox and VMware having the same bug is really low, though it's not zero.Two virtualization products exhibit the same behaviour. Is it a bug in both of them? Or should be blame Microsoft (a certain patch)?
-
thanar
- Posts: 40
- Joined: 21. Nov 2013, 19:18
- Primary OS: Mac OS X other
- VBox Version: VirtualBox+Oracle ExtPack
- Guest OSses: winXP, win7
- Location: Kozani, Greece
- Contact:
Re: Windows XP: bad SMP performance
I am seeing the same effect:
OS X 10.8.5 host on an i5 iMac, tried an XPsp3 VM from Parallels (had 4 CPUs enabled under Parallels) and it was terribly slow (did not check the active SMP XP driver though). Thought it was due to the transition.
Created a new VM with XP (no sp, that's my OEM Windows disk) and selected 4 CPUs, install took ages. Installed Virtualbox tools. Tested uncompressing a 150MB zip file took almost half an hour.
Tried viewtopic.php?f=1&t=58445 (wtf, I can't post urls, pls fix it) and the VM got blazing fast. Tested the same zip decompress, completed in a couple of minutes (was over LAN both times).
Will create a new 1CPU VM tomorrow and report back.
OS X 10.8.5 host on an i5 iMac, tried an XPsp3 VM from Parallels (had 4 CPUs enabled under Parallels) and it was terribly slow (did not check the active SMP XP driver though). Thought it was due to the transition.
Created a new VM with XP (no sp, that's my OEM Windows disk) and selected 4 CPUs, install took ages. Installed Virtualbox tools. Tested uncompressing a 150MB zip file took almost half an hour.
Tried viewtopic.php?f=1&t=58445 (wtf, I can't post urls, pls fix it) and the VM got blazing fast. Tested the same zip decompress, completed in a couple of minutes (was over LAN both times).
Will create a new 1CPU VM tomorrow and report back.
Re: Windows XP: bad SMP performance
yay I'm not alone!thanar wrote:I am seeing the same effect:
Now I'm terribly curious: did XP run fast with 4 CPUs in Parallels?thanar wrote:OS X 10.8.5 host on an i5 iMac, tried an XPsp3 VM from Parallels (had 4 CPUs enabled under Parallels) and it was terribly slow (did not check the active SMP XP driver though). Thought it was due to the transition.
What exactly from that thread did you try?thanar wrote:Tried viewtopic.php?f=1&t=58445 (wtf, I can't post urls, pls fix it) and the VM got blazing fast. Tested the same zip decompress, completed in a couple of minutes (was over LAN both times).