Intel Hyper Threading

  • Thread starter Thread starter whodunit
  • Start date Start date
W

whodunit

I have an issue with a board where the CPU indicates it has Y number of
logical processors, and X number of cores. However, enabling and disabling
Hyper Threading in the BIOS will not make a difference to the number of
actual processors that are visibile -- X, not Y. It seems to me there ought
to be a machine specific register (MSR) feature bit that controls Hyper
Threading, a bit that is not being toggled to enable HT. Does anyone know
where to find the necessary information about enabling HT via an MSR, and
which register and bit(s) this would be?

I already know about APIC, the CPUID feature bits in EDX, and the logical
versus physical core counts in CPUID values. What I am looking for is
another bit, or bits, elsewhere that truly enables HT.

Thanks,
 
I have an issue with a board where the CPU indicates it has Y number of
Is it safe to assume you have ruled out other factors like whether HT was
enabled when the OS was installed?

It might not hurt to list the hardware and OS.


For the sake of argument, let us say the OS is the venerable MS DOS, and
that my program is able to identify and run threads on all active
processors. From the above statement, it is known that Y logical processors
is exactly twice the number of X physical cores. Both values are available
from the CPUID instruction.

The initial boot attempt with Linux (kernel 2.6.22) was not successful with
the CPU is its current socket, so I will attempt to move it to another
socket this afternoon and check if Linux is able to boot. The problem
yesterday afternoon was that Linux could not start CPU 0, according to the
screen.

I cannot divulge the processor, except to say it is from Intel. I merely
seek knowledge about any MSRs that control Hyper Threading, if they exist,
so I can make full use of the processor as it advertises its capable of.
 
whodunit said:
I have an issue with a board where the CPU indicates it has Y number of
logical processors, and X number of cores. However, enabling and
disabling Hyper Threading in the BIOS will not make a difference to the
number of
actual processors that are visibile -- X, not Y. It seems to me there
ought to be a machine specific register (MSR) feature bit that controls
Hyper
Threading, a bit that is not being toggled to enable HT. Does anyone know
where to find the necessary information about enabling HT via an MSR, and
which register and bit(s) this would be?

I already know about APIC, the CPUID feature bits in EDX, and the logical
versus physical core counts in CPUID values. What I am looking for is
another bit, or bits, elsewhere that truly enables HT.

Thanks,

If the kernel isn't smp aware, it'll never make use of the feature. I
suggest you use a recent kernel, 2.6.23.3 and enable the needed features.
 
I cannot divulge the processor, except to say it is from Intel. I merely
seek knowledge about any MSRs that control Hyper Threading, if they exist,
so I can make full use of the processor as it advertises its capable of.

Great! I need your help but cannot tell you what I'm working with.
What, is your company working on upgrading Intel chips without Intel
knowing? It's not like you are giving up some trade secrets here.

Stop the BS, if you want an answer then let the people know what
hardware and software you are using. Only then can someone give you an
answer without guessing if it is right or not.


--

Regards
Robert

Smile... it increases your face value!
Linux User #296285
http://counter.li.org
 
I cannot divulge the processor, except to say it is from Intel. I merely
Great! I need your help but cannot tell you what I'm working with.
What, is your company working on upgrading Intel chips without Intel
knowing? It's not like you are giving up some trade secrets here.

Stop the BS, if you want an answer then let the people know what
hardware and software you are using. Only then can someone give you an
answer without guessing if it is right or not.


The "BS" is this, I have engineering samples of Intel processors that have
not hit the market, and Intel has not responded to any of our queries
regarding bugs with their BIOS / processor. Therefore, I seek information
from the community at large regarding ealier processors that I might be able
to check / use with these new ones. I am not asking for an accurate answer
to these unannounced processors, only possible avenues to check based on
already shipping processors from the Pentium IV and newer.

You don't like what I posted, too bad, I cannot name the processors due to
NDA agreements.
 
I have an issue with a board where the CPU indicates it has Y number of
If the kernel isn't smp aware, it'll never make use of the feature. I
suggest you use a recent kernel, 2.6.23.3 and enable the needed features.


The Linux kernel is 2.6.22 with SMP enabled. That, however, does not solve
the issue as tested on Friday. I have to check another processor
configuration in the board tomorrow, but I expect the same results.
 
whodunit said:
The Linux kernel is 2.6.22 with SMP enabled. That, however, does not solve
the issue as tested on Friday. I have to check another processor
configuration in the board tomorrow, but I expect the same results.

You might be able to reach someone at Intel here. These forums see all kinds of
different questions about Intel products. Just a matter of finding the best
forum, and see if someone will forward an answer from "inside".

http://softwarecommunity.intel.com/isn/Community/en-US/forums/thread/30244450.aspx
http://softwarecommunity.intel.com/isn/Community/en-US/forums/1049/ShowForum.aspx

The person who provided the Eng sample, should also be able to figure out
how to get you some help. And without compromising the NDA.

There are also the architecture documents on the Intel site, for whatever
they're worth.

http://www.intel.com/products/processor/manuals/

Paul
 
Back
Top