-
Knowing My CPU
hey, sorry to bother you guys about this, but I just ordered a custom computer from a store, and I was wondering if there is a way to tell wether the CPU (intel) is the HT ones. The reason im asking is because im afraid of them ripping me off with just a normal 3.2 CPU instead of the ones with hyper-threading. So if anyone can tell me how to see what type it is it would be great =).
Thanks,
s3nate
-
Hi
The very simplest way is to check the number of CPUs
displayed by the task manager (assuming windows XP). If you
have only 1 CPU, but there are 2 CPUs shown, there is a
good chance that you have HT support (real vs logical CPUs).
Also simple might be to remove the cooler, look at the CPU for
a small HT, and put back the cooler correctly :) (not recommended)
The second simplest, but safe way would be to use the intel
tool at [1].
For those interested in what the tool is actually doing.
It calls cpuid and obtains information by analysing the
result (in edx) based on the specification[2].
I quickly coded an example (for several compilers)
Code:
#include <stdio.h>
#define USE_ATandT 1 // set to 1 if you use gcc
int IsHTSupport = 0;
int main(){
long int one=1;
long int test = 0x10000000;
#if USE_ATandT
__asm__ __volatile__( "pushl %%eax\t\n"
"movl %1,%%eax\t\n"
"cpuid\t\n"
"test %2,%%edx\t\n"
"jz HT_Not_Support\t\n"
"movl %1,%%eax\t\n"
"movl %%eax,%0\t\n"
"HT_Not_Support:\t\n"
"popl %%eax"
: "=m" (IsHTSupport)
: "m" (one),"m" (test));
#else
__asm{
mov eax,1
cpuid
test edx, 0x10000000 // Check if bit 28 in EDX is set
jz HT_Not_Support
mov IsHTSupport,1
HT_Not_Support:
}
#endif
printf("Result: %d (1=yes, 0=no)\n",IsHTSupport);
return 0;
}
compile with
Code:
> gcc -lstdc++ -o test_HT test_HT.cpp
Cheers
[1] http://downloadfinder.intel.com/scri...g/cthenu04.msi
[2] http://bochs.sourceforge.net/techspe...-and-cpuid.pdf
-
it could be a HT cpu but if the MOBO is not HT compatable then you have a plain jane toy with a 533fsb.. and no Hyper Threading..
-
Thanks, it really helped...and thankfully they didnt try to rip me off=)