2003-02-05 12:53:09

by Balram Adlakha

[permalink] [raw]
Subject: HYPERTHREADING on older P4???

hi,
/proc/cpuinfo reports "ht" in the supported options...I have a p4 2 ghz
stepping 4, and when I boot with an SMP kernel, it shows another thing :
siblings 1

I think HT is there in all p4s, so can it be enabled in older P4s? Like
mine? What does "siblings = 1" mean?


2003-02-05 13:01:10

by Dave Jones

[permalink] [raw]
Subject: Re: HYPERTHREADING on older P4???

On Wed, Feb 05, 2003 at 06:02:43AM -0700, [email protected] wrote:
> hi,
> /proc/cpuinfo reports "ht" in the supported options...I have a p4 2 ghz
> stepping 4, and when I boot with an SMP kernel, it shows another thing :
> siblings 1
>
> I think HT is there in all p4s, so can it be enabled in older P4s? Like
> mine? What does "siblings = 1" mean?

It means there is one 'thread'. Ergo, you do not have the possibility
of running this as you would a true HT P4. There are a limited number
of Northwood P4's out there which do support HT and have >1 sibling,
but asides from those, you'll need a Xeon to take advantage of it.

There are countless rumours of being able to enable extra siblings
by poking MSRs, but not one person has to my knowledge achieved this.
Some folks have also allegedly found that snipping pins or wiring extra
bits to them have enabled the 'extra sibling'. Whether this is true or
not, and whether it is 100% equivalent to a real HT part is again,
questionable.

Dave

--
| Dave Jones. http://www.codemonkey.org.uk
| SuSE Labs

2003-02-05 17:33:53

by Mikael Pettersson

[permalink] [raw]
Subject: Re: HYPERTHREADING on older P4???

On Wed, 5 Feb 2003 13:07:07 +0000, Dave Jones wrote:
>There are countless rumours of being able to enable extra siblings
>by poking MSRs, but not one person has to my knowledge achieved this.
>Some folks have also allegedly found that snipping pins or wiring extra
>bits to them have enabled the 'extra sibling'. Whether this is true or
>not, and whether it is 100% equivalent to a real HT part is again,
>questionable.

HT-capable P4s decide at RESET (or INIT?) time whether to enable
the second thread or not by sampling one of the data or address pins.
The chipset is supposed to drive that pin low or high according to
how HT has been set up in the BIOS. This is mentioned in the
3.06 GHz P4 data sheet.

/Mikael

2003-02-05 21:46:37

by Eric W. Biederman

[permalink] [raw]
Subject: Re: HYPERTHREADING on older P4???

Dave Jones <[email protected]> writes:

> On Wed, Feb 05, 2003 at 06:02:43AM -0700, [email protected] wrote:
> > hi,
> > /proc/cpuinfo reports "ht" in the supported options...I have a p4 2 ghz
> > stepping 4, and when I boot with an SMP kernel, it shows another thing :
> > siblings 1
> >
> > I think HT is there in all p4s, so can it be enabled in older P4s? Like
> > mine? What does "siblings = 1" mean?
>
> It means there is one 'thread'. Ergo, you do not have the possibility
> of running this as you would a true HT P4. There are a limited number
> of Northwood P4's out there which do support HT and have >1 sibling,
> but asides from those, you'll need a Xeon to take advantage of it.
>
> There are countless rumours of being able to enable extra siblings
> by poking MSRs, but not one person has to my knowledge achieved this.
> Some folks have also allegedly found that snipping pins or wiring extra
> bits to them have enabled the 'extra sibling'. Whether this is true or
> not, and whether it is 100% equivalent to a real HT part is again,
> questionable.

I have had some limited experience with an older HT capable Xeon,
that reported 1 sibling. Essentially the result was that sending a
wakeup ipi to the next sibling was a good way to lockup the machine.
I was actually looking for the apic id of the other Xeon in the box
and was sending to the sibling by accident.

>From what I can tell from various micro-benchmarks and other strange
experiences intel has had to work fairly hard to get additional
sibling CPUs to perform correctly and well. And the development
versions that are present but disabled in older dies are not likely
to be useful.

Eric

2003-02-06 20:14:46

by Bill Davidsen

[permalink] [raw]
Subject: Re: HYPERTHREADING on older P4???

On Wed, 5 Feb 2003, Dave Jones wrote:

> It means there is one 'thread'. Ergo, you do not have the possibility
> of running this as you would a true HT P4. There are a limited number
> of Northwood P4's out there which do support HT and have >1 sibling,
> but asides from those, you'll need a Xeon to take advantage of it.

The 3.06G parts are pretty available, but the prices are just getting
silly. I suppose it will drop when the supply of parts exceeds the
demand of people who can't wait.

> There are countless rumours of being able to enable extra siblings
> by poking MSRs, but not one person has to my knowledge achieved this.
> Some folks have also allegedly found that snipping pins or wiring extra
> bits to them have enabled the 'extra sibling'. Whether this is true or
> not, and whether it is 100% equivalent to a real HT part is again,
> questionable.

There is one "fix" going around which supposedly works using the
firmware upgrade capability. I have no idea if it does or even could
work, I never had the guts to try it, because I'm not sure that changes
really go away on power cycle, and I didn't get it from a trusted
source. The idea of untrusted code running in the firmware is scarier
than booting Windows.



On Wed, 5 Feb 2003, Mikael Pettersson wrote:

> HT-capable P4s decide at RESET (or INIT?) time whether to enable
> the second thread or not by sampling one of the data or address pins.
> The chipset is supposed to drive that pin low or high according to
> how HT has been set up in the BIOS. This is mentioned in the
> 3.06 GHz P4 data sheet.

This is my understanding, and it makes the idea of a firmware fix sound
more possible, by just enabling the 2nd sibling if HT capability exists.
I'll still let wonone else check it out first...

--
bill davidsen <[email protected]>
CTO, TMR Associates, Inc
Doing interesting things with little computers since 1979.