[SOLVED] Windows XP Guest only using 1 CPU

Discussions related to using VirtualBox on Windows hosts.
Post Reply
s1L3nCe
Posts: 15
Joined: 14. Apr 2015, 19:24

[SOLVED] Windows XP Guest only using 1 CPU

Post by s1L3nCe »

Hello everyone!

I'm doing some tests with a Windows XP machine and there is something I do not understand.

As you can see in the following picture, I've assigned all 6 cores to a Windows XP vm (for the sake of the experiment) and, even though the CPU usage is 100% on the XP machine, on the Host machine (Windows 11), CPU usage is very low in comparison. Why is this?

Image

Thank you for the clarification 🙏

edit: Judging by this screenshot, it seems that Windows XP is just using a single core (only 1 processor is showing in the dropdown menu), so this is a Windows XP issue I guess.

Edit: Here is the solution: viewtopic.php?p=546334#p546334

Also, if you want to change APIC mode (single core/multicore) on windows XP after installing, you can do it with this. I've tested it and it worked just fine.
Last edited by s1L3nCe on 12. Feb 2024, 14:11, edited 5 times in total.
scottgus1
Site Moderator
Posts: 20945
Joined: 30. Dec 2009, 20:14
Primary OS: MS Windows 10
VBox Version: PUEL
Guest OSses: Windows, Linux

Re: Windows XP Guest CPU Usage

Post by scottgus1 »

Pictures should be posted using the forum's Attachments tab. Crop & resize as needed.

If XP was installed on one processor, it will not respond to more processors being added.

XP uses different HALs to handle single vs multiple processors. The HAL that matches the single vs multiple processors is chosen during installation of XP. The HAL will not change when you increase processors from 1 after install.

There is a way to change the HAL, see viewtopic.php?f=1&t=24823&start=15#p111502 but if the VM is new and has not been activated or much other app installation has happened, it may be easier to start over with 2 or more processors in the VM, to get the multi-processor HAL.
s1L3nCe
Posts: 15
Joined: 14. Apr 2015, 19:24

Re: Windows XP Guest CPU Usage

Post by s1L3nCe »

scottgus1 wrote: 11. Feb 2024, 19:06 If XP was installed on one processor, it will not respond to more processors being added.

XP uses different HALs to handle single vs multiple processors. The HAL that matches the single vs multiple processors is chosen during installation of XP. The HAL will not change when you increase processors from 1 after install.

I've just realised what's the issue. As you said, this Windows XP vm was originally installed on a VM configured as single core. The reason for this was that I realised that as soon as I enabled I/O APIC, Windows XP installation was excruciatingly slow. I've tried APIC enabled with 2 CPU and 1 CPU and the issue is the same. I've screencaptured the whole test, to show you exactly what I mean: https://streamable.com/q8ownt

My host PC is an AMD 5600X with 32 GB of DDR4 RAM.

PS: I tried posting the picture from before using the img function but it did not work for some reason. I'll try again.
edit: I just tried again using the built in function. It doesn't work. Maybe is because my account is kind of new.
s1L3nCe
Posts: 15
Joined: 14. Apr 2015, 19:24

Re: Windows XP Guest CPU Usage

Post by s1L3nCe »

I fixed it! I did the first 3 steps of this guide and the problem was solved.

https://kdrozd.pl/slow-virtualbox-virtual-machine/

The turtle icon was the giveaway :P

Here is a repost of the steps:

1. Disable Incompatible Windows Features
Go to Turn Windows features on or off - you can search that from start menu, or find it in Control Panel.

Disable (untick) following services:
- Containers
- Guarded Host
- Hyper-V
- Virtual Machine Platform
- Windows Hypervisor Platform
- Windows Sandbox
- Windows Subsystem for Linux

2. Disable Hypervisor
Start Command Prompt as administrator and run:

Code: Select all

bcdedit /set hypervisorlaunchtype off

3. Disable Device Guard

Start Edit group policy - gpedit

Go to Local Computer Policy > Computer Configuration > Administrative Templates > System

Click on Device Guard

Set Turn On Virtualization Based Security to state Disabled

Edit Group Policy

Close Group Policy Editor

---------------

Reboot and you are done. There are a few more steps in the website but those are the ones I needed to make it work.
Post Reply