2003-11-25 09:44:24

by Gábor Lénárt

[permalink] [raw]
Subject: hyperthreading

Hi,

A somewhat stupid question from me, but I have no documentation about
this topic, namely, how can I enable hyperthreading with 2.6.0 test
kernels?

My /proc/cpuinfo shows:

processor : 0
vendor_id : GenuineIntel
cpu family : 15
model : 1
model name : Intel(R) Pentium(R) 4 CPU 1.70GHz
stepping : 2
cpu MHz : 1694.605
cache size : 256 KB
[...]
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov
pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm
bogomips : 3334.14

I built kernel, with SMP, ACPI, APIC, etc etc etc support, but I don't see
any change. The only description I could find in Documentation/ is "acpi=ht"
about this topic saying that it's enabled enough ACPI just for enabling
HT. But I would like to have full ACPI and HT.

--
- G?bor (larta'H)


Subject: Re: hyperthreading

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On 10:44, marted? 25 novembre 2003, G?bor L?n?rt wrote:
> Hi,
>
> A somewhat stupid question from me, but I have no documentation about
> this topic, namely, how can I enable hyperthreading with 2.6.0 test
> kernels?
>
> My /proc/cpuinfo shows:
>
> processor : 0
> vendor_id : GenuineIntel
> cpu family : 15
> model : 1
> model name : Intel(R) Pentium(R) 4 CPU 1.70GHz
> stepping : 2
> cpu MHz : 1694.605
> cache size : 256 KB
> [...]
> flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
> cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm
> bogomips : 3334.14


P4 does not support HT ... only Xeon and new generation P4-HT does.

moreover you need olso a MB with HT support

- --
<?php echo ' Emiliano `AlberT` Gabrielli '."\n".
' E-Mail: AlberT_AT_SuperAlberT_it '."\n".
' Web: http://SuperAlberT.it '."\n".
' IRC: #php,#AES azzurra.com '."\n".'ICQ: 158591185'; ?>
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.3 (GNU/Linux)

iD8DBQE/wyWDF4boRkzPHocRAhw5AJ95gD2xOL7AtfqKo2eOl0nQXbXl6wCgzsIB
lWN9pkyqelZ8cRIZoypklrw=
=uylL
-----END PGP SIGNATURE-----

2003-11-25 10:05:32

by Gábor Lénárt

[permalink] [raw]
Subject: Re: hyperthreading

On Tue, Nov 25, 2003 at 10:48:51AM +0100, Emiliano 'AlberT' Gabrielli wrote:
[...]
> > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
> > cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm
> > bogomips : 3334.14
>
>
> P4 does not support HT ... only Xeon and new generation P4-HT does.

OK, but if this CPU does not support HT, then why 'ht' is shown at
flags in /proc/cpuinfo? It looks like quite illogical for me then ...

- G?bor (larta'H)

2003-11-25 10:23:00

by Karl Pitrich

[permalink] [raw]
Subject: Re: hyperthreading

On Tue, 2003-11-25 at 10:44, Gábor Lénárt wrote:

> A somewhat stupid question from me, but I have no documentation about
> this topic, namely, how can I enable hyperthreading with 2.6.0 test
> kernels?

HT is normally enabled in the machine's bios.
at least on various IBM's.
if i enable HT in my bios, the kernel detects 4 cpu's, 2 otherwise.

/ karl

2003-11-25 10:32:36

by Måns Rullgård

[permalink] [raw]
Subject: Re: hyperthreading

G?bor L?n?rt <[email protected]> writes:

>> > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
>> > cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm
>> > bogomips : 3334.14
>>
>>
>> P4 does not support HT ... only Xeon and new generation P4-HT does.
>
> OK, but if this CPU does not support HT, then why 'ht' is shown at
> flags in /proc/cpuinfo? It looks like quite illogical for me then ...

I've been wondering about that myself. I'm sure my P4M doesn't have
any hyperthreading.

--
M?ns Rullg?rd
[email protected]

2003-11-25 10:46:04

by Mikael Pettersson

[permalink] [raw]
Subject: Re: hyperthreading

M?ns Rullg?rd writes:
> G?bor L?n?rt <[email protected]> writes:
>
> >> > flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
> >> > cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm
> >> > bogomips : 3334.14
> >>
> >>
> >> P4 does not support HT ... only Xeon and new generation P4-HT does.
> >
> > OK, but if this CPU does not support HT, then why 'ht' is shown at
> > flags in /proc/cpuinfo? It looks like quite illogical for me then ...
>
> I've been wondering about that myself. I'm sure my P4M doesn't have
> any hyperthreading.

Don't people read Intel docs any more?

- The HT feature flag means "might have HT, check further to make sure".
- "check further" involves checking #siblings >= 2 via CPUID.
Old P4s typically announce HT but have #siblings < 2.
- Intel made HT enabling a hardware thing via the chipset (a pin
sampled at reset). BIOS can disable HT but only HW can enable it.
This is why you can't put a HT-capable P4 in a non-HT-chipset
machine and expect it to work -- although PowerLeap seemed to
have an adapter to "fix" that.

2003-11-25 11:03:53

by Arjan van de Ven

[permalink] [raw]
Subject: Re: hyperthreading

On Tue, 2003-11-25 at 11:05, Gábor Lénárt wrote:
> On Tue, Nov 25, 2003 at 10:48:51AM +0100, Emiliano 'AlberT' Gabrielli wrote:
\
> OK, but if this CPU does not support HT, then why 'ht' is shown at
> flags in /proc/cpuinfo? It looks like quite illogical for me then ...

/proc/cpuinfo only reports what the cpu reports. The 'ht' flag means not
HyperThreading per se. It means it listens to the "rep; nop" sequence
for example. Also all Hyperthreading capable cpus have this flag set,
but that is a one way relationship. Esp since this needs more support
than just the cpu.


Attachments:
signature.asc (189.00 B)
This is a digitally signed message part

2003-11-29 13:40:43

by Bill Davidsen

[permalink] [raw]
Subject: Re: hyperthreading

On Tue, 25 Nov 2003, Emiliano 'AlberT' Gabrielli wrote:


> P4 does not support HT ... only Xeon and new generation P4-HT does.

Not quite right, the 3.06GHz has HT enabled.
>
> moreover you need olso a MB with HT support

IIRC there's a pin which must be powered to enable HT at boot, but I
believe Powerleap does make an adaptor to do that. AFAIK all P4's have HT,
but most have only one sibling, so there's no use or benefit from the
feature.

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