**DONOTDELETE**
(Lurker)
2004-08-11 08:00 PM
How to detect Hyperthreading Enabled

I been searching around on how to programically detect if a computer has hyperthreading enabled. Any ideas?

Most of the solution I found only reports the number of Processors Windows see.

How about checking the BIOS to see if hyperthreading is enabled? Is that possible? I am mainly concerned about my compaq servers.

Thanks

grayman


NTDOCAdministrator
(KiX Master)
2004-08-11 09:20 PM
Re: How to detect Hyperthreading Enabled

What series of Compaq Servers? Most Compaq Servers have been hyperthread supported for years now.


JohnQ
(Starting to like KiXtart)
2004-08-12 12:37 AM
Re: How to detect Hyperthreading Enabled

I was going to post the same question. Not for servers, but for some of the newer workstations.

Waltz's CPUNAME() worked good in the past for translating family and model to actual processor types but it is now a bit out of date. Has anyone done any updating to this?


**DONOTDELETE**
(Lurker)
2004-08-12 01:10 AM
Re: How to detect Hyperthreading Enabled

We only have ProLiant DL series servers.

I don't want to check if the processor supports hyperthreading or not. I want to check if hyperthreading is enabled.

The reason is we do have cases where a server supports hyperthreading but has it disabled in the BIOS.

Thanks


LonkeroAdministrator
(KiX Master Guru)
2004-08-12 01:18 AM
Re: How to detect Hyperthreading Enabled

doc, that's something I herd for the first time.
hp and hyperthreading and for years.
iirc, it's all about this new hyperthreading intel-processor-fuss, that has nothing to do with the server itself and has not been around for years.


NTDOCAdministrator
(KiX Master)
2004-08-12 02:06 AM
Re: How to detect Hyperthreading Enabled

Well it has been around for a couple years as the G2 series started it and that is starting to get almost out of warranty for us so that is why I said years.

The Compaq SmartStart Scripting Toolkit can enable and disable this feature I believe.

Here is a link with some further information about it.

http://h18004.www1.hp.com/products/servers/technology/hyper-threading.html

http://h18004.www1.hp.com/products/servers/technology/hyperthreading-ossupport.html

An article here on the Windows .NET Magazine site says that it is not supported via WMI.
http://www.winnetmag.com/Article/ArticleID/40228/40228.html



LonkeroAdministrator
(KiX Master Guru)
2004-08-12 02:20 AM
Re: How to detect Hyperthreading Enabled

ja, xeon.
we got our corps first hyperthread enabled server around last years christmas.
before all of them were PIII's (HP/ComeBack-ML)


**DONOTDELETE**
(Lurker)
2004-08-12 02:40 AM
Re: How to detect Hyperthreading Enabled

Thanks Doc for the links. I'll will check it out.

It seems like it should be a pretty easy thing to do but I guess not since I found lots of questions but no answer.


Kdyer
(KiX Supporter)
2004-08-12 07:58 AM
Re: How to detect Hyperthreading Enabled

As an aside.. I am in the process of imaging 200 new workstations that are hyperthreaded from Compaq.

Kent


**DONOTDELETE**
(Lurker)
2004-08-12 09:13 AM
Re: How to detect Hyperthreading Enabled

There is a command called htdump from the Microsoft Reporting toolkit. Below is a code snippet I use to check if a processor is hyperthreaded.

This is useful for inventory as WMI will report 2 processors, where obviously it is not the case..

$file = "hyperthread.txt"
Shell "%comspec% /c htdump >$file"
$rc = Open (4,$file,2)
$Line = ReadLine(4)
$Hyperthread = "Processors are hyperthreading capable"
If $Line = $Hyperthread
$Hyper = 1
Else
$Hyper = 0
EndIf


**DONOTDELETE**
(Lurker)
2004-08-15 03:30 PM
Re: How to detect Hyperthreading Enabled

Here is some good information on Hyper-Threading technology and a command line utility to detect whether or not it is enabled.
http://www.intel.com/cd/ids/developer/asmo-na/eng/microprocessors/ia32/pentium4/hyperthreading/20438.htm


NTDOCAdministrator
(KiX Master)
2004-08-15 05:44 PM
Re: How to detect Hyperthreading Enabled

Nice... thanks for the information and link.
This is from FEB 2002

Here is an example of the output.

Quote:

CPU Counting Utility
Version 1.4
Copyright (C) 2001 Intel Corporation. All Rights Reserved

Hyper-threading technology not capable
Number of logical processors per physical processor: 1
Number of physical processors: 1





Kdyer
(KiX Supporter)
2004-08-15 07:06 PM
Re: How to detect Hyperthreading Enabled

Here is one with Hyperthreading enabled:
Quote:


CPU Counting Utility
Version 1.4
Copyright (C) 2001 Intel Corporation. All Rights Reserved

Hyper-threading technology enabled
Number of logical processors per physical processor: 2
Number of physical processors: 1





HTH,

Kent


NTDOCAdministrator
(KiX Master)
2004-08-15 07:17 PM
Re: How to detect Hyperthreading Enabled

Okay here is one from a 4 physical CPU system.

Quote:

CPU Counting Utility
Version 1.4
Copyright (C) 2001 Intel Corporation. All Rights Reserved

Hyper-threading technology enabled
Number of logical processors per physical processor: 2
Number of physical processors: 4





NTDOCAdministrator
(KiX Master)
2005-05-26 10:25 PM
Re: How to detect Hyperthreading Enabled

FYI

This CPU COUNT utility has been updated to 2.0 and the link has changed (as usual)

A Solution for Counting Physical and Logical Processors in a 32-bit system

Counting Physical and Logical Processors in 32-bit Multi-Core Systems

DOWNLOAD CPU Counting Utility V2.0

 


NTDOCAdministrator
(KiX Master)
2005-12-15 02:24 AM
Re: How to detect Hyperthreading Enabled

For those interested, not sure of the history as I don't see a change log on the site - but the utility has been updated again. It is now version 2.4 but the date is from 4/13/2005
 
Links still appear to work amazingly.