How to activate hyper threading in Windows XP SP2 Home ?

T

Thierry L.

Hello,
I have recently changed my motherboard by the same (It was out of
order). But when I use windows, I see, in configuration panel 2 cpu and
Windows says that I have a ACPI PC and he indicate only one cpu at 3.00
ghz (I have a Prescott 3 Ghz). Task manager see only one cpu and Everst
too.Intel(R) Hyper-Threading Technology Test Utility - Version 1.9 see
that I have a problem with my bios. I upgrade/downgrade this and I
obtain the same message. I suspect a problem due to my Windows.
How can i reactivate hyperthreading technology via boot.ini or without
reinstallate XP ?
 
C

Clark

Thierry said:
Hello,
I have recently changed my motherboard by the same (It was out of
order). But when I use windows, I see, in configuration panel 2 cpu
and Windows says that I have a ACPI PC and he indicate only one cpu
at 3.00 ghz (I have a Prescott 3 Ghz). Task manager see only one cpu
and Everst too.Intel(R) Hyper-Threading Technology Test Utility -
Version 1.9 see that I have a problem with my bios. I
upgrade/downgrade this and I obtain the same message. I suspect a
problem due to my Windows. How can i reactivate hyperthreading technology
via boot.ini or without
reinstallate XP ?


http://www.trap17.com/index.php/enabling-hyperthreading_t22740.html
1) Download and install Windows XP Service Pack 2
(if you don't have it installed already)
2) Find the following files (normally in your c:windowsservicepackfiles)
(I just searched for them)
- ntkrnlmp.exe
- halmacpi.dll
and copy them to your c:windowssystem32 folder. (This is considering your
new motherboard has ACPI support. I know that these files will support
non-ACPI computers as well, but that has not been tested)
3) Open up boot.ini in your text editor and find the following line:
multi(0)disk(0)rdisk(0)partition(1)WINDOWS="Microsoft Windows XP
Professional" /fastdetect /NoExecute=OptIn (or something of this sort)
and replace that line with:

multi(0)disk(0)rdisk(0)partition(1)WINDOWS="XP Professional MP" /fastdetect
/kernel=ntkrnlmp.exe /hal=halmacpi.dll (I just copied and pasted from
fastdetect to the end)
Make sure there are no line breaks in that line.
(backup your boot.ini and your hardware profile if you want, that might be a
good idea)

I just used this trick, it worked well, I also then went to device manager
and "computer" and changed the driver to multiprocessor PC (warning may
cause PC not to boot) but can be fixed with system restore if you have an
ultimate boot disk hanging around
http://www.ubcd4win.com/downloads.htm

good luck
Clark
 
J

John John

Windows XP should automatically see the second processor, providing that
it is enabled in the BIOS.

John
 
F

frodo

For Hyperthreading to work, the BIOS must detect it and "tell" XP about
it. Usually there is a BIOS setting enabling this detection (so you can
disable it if you want). Make sure the BIOS supports HT and its detection
is enabled.

_THEN_, XP can use it, but only if it was configured initially to do so;
it needs to have the multi-processor HAL installed, which is done at XP
install time. You can re-do the HAL selection by doing a XP REPAIR
INSTALL (a pain, it'll wipe all your hotfixes, YEARS worth of WinUpdates;
I recommend AutoPatcher, get it and build the CD before repairing, then
use it to reinstall the hotfixes). BUT, ensure the BIOS is detecting it
first, or the xp install won't see it. The previous poster gave you a
workaround to force it manually, which sounds viable but I can't vouch for
the technique.

You can easily check if you have the MP HAL in Device Manager: expand the
"Computer" branch, under it it should read "ACPI Multiprocessor PC". If
it does you have the MP HAL installed already. If not then that's why it
isn't working. Once you do finally get it working you'll notice the
"Processors" branch shows two processors.
 
J

John John

For Hyperthreading to work, the BIOS must detect it and "tell" XP about
it. Usually there is a BIOS setting enabling this detection (so you can
disable it if you want). Make sure the BIOS supports HT and its detection
is enabled.

_THEN_, XP can use it, but only if it was configured initially to do so;
it needs to have the multi-processor HAL installed, which is done at XP
install time.

Not at all, Windows XP will automatically upgrade to multi-processor HAL
if needed.


You can re-do the HAL selection by doing a XP REPAIR

Not necessary with Windows XP, as stated above the correct HAL will
automatically be used. At the worse you may have to change the HAL in
the Device Manager. Even with earlier Windows version a reinstall was
not necessary to enable multi-processing. Up to NT4 the UpToMP utility
was used to change the HAL, in Windows 2000 the HAL needs to be changed
in the Device Manager, with XP it's almost always automatically selected
when needed. You only need to reinstall Windows (all versions) if the
HAL is of an entirely different family and if it is not listed as
available in the device manager, the multi-processor HAL in the same
family is almost always available.

Windows XP and Hyper-Threading
http://support.microsoft.com/kb/810231

HAL options after Windows XP or Windows Server 2003 Setup
http://support.microsoft.com/kb/309283

John
 
F

frodo

John John,

As you said, http://support.microsoft.com/kb/810231, does state it'll
upgrade the hal automatically. I never knew that, and have never seen it
do it either! But MS says it's so, so it must be true.

This exact issue comes up at least once a month, and the answer has always
been to do a repair install to upgrade the hal. Interesting...

OP, tell us if you find out that the above is true or not, I'd like to
know.
 
J

John John

Oh, it is true, I have done it many times with Windows XP, you can
toggle hyperthreading on and off in the BIOS and XP automatically
changes the HAL *if needed*. As I said, even in Windows 2000 a
reinstall is seldom needed to change from Uni to Multi processor HAL.
The OP said that he changed his motherboard so he may need to reinstall,
but if the replacemant motherboard was the same XP should see the second
processor if he enables it in the BIOS. It's not a 100% failproof
thing, if XP doesn't automatically change the HAL of if the option to
change to a multi processor HAL is not present then yes, a reinstall is
necessary. You can read these for more information:

Cannot Select MPS Uniprocessor or ACPI Uniprocessor HAL
http://support.microsoft.com/kb/811366

(Note the last line in the article: "If you run a multiprocessor HAL
with only a single processor installed, the computer typically works as
expected, and there is little or no affect on performance.")

HOW TO: Add Support for Multiple Processors in Windows 2000
http://support.microsoft.com/kb/234558/EN-US/
(This is the procedure that is usually automatically done with XP)

John
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top