Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

P4 Xeon + Hyperthreading

8 views
Skip to first unread message

Stuart J. Browne

unread,
Dec 18, 2002, 11:11:23 PM12/18/02
to
I've had a quick read through the posts recently, and I've not seen one
stating whether OSR5.0.6 does or does not support Hyperthreading.

Given that I had issues initilizing the second processor when it was enabled,
I'm picking the answer is No, but as this is the first machine I've build
with this feature, I just want to make sure it's not just me missing some
configuration somewhere.


HP Prolient ML350
Dial P4 Xeon 2.2Ghz

Other fun stuff in it:

Smart Array 5304, 256MB Cache ('ciss' driver)
Broadcomm based Gigabit Ethernet controller

Thankfully the EFS 5.52a covers all of the fun bits..

bkx


Stephen M. Dunn

unread,
Dec 19, 2002, 4:57:04 AM12/19/02
to
In article <atrgt8$sc$1...@perki.connect.com.au> "Stuart J. Browne" <stu...@promed.com.au> writes:
$I've had a quick read through the posts recently, and I've not seen one
$stating whether OSR5.0.6 does or does not support Hyperthreading.

I did a groups.google.com advanced search for comp.unix.sco.misc
articles with the word hyperthreading, and got five threads. Somewhere
in each thread is the suggestion that hyperthreading should be turned
off.
--
Stephen M. Dunn <ste...@stevedunn.ca>
>>>----------------> http://www.stevedunn.ca/ <----------------<<<
------------------------------------------------------------------
Say hi to my cat -- http://www.stevedunn.ca/photos/toby/

Bela Lubkin

unread,
Dec 19, 2002, 8:07:52 PM12/19/02
to sco...@xenitec.on.ca
Stuart J. Browne wrote:

> I've had a quick read through the posts recently, and I've not seen one
> stating whether OSR5.0.6 does or does not support Hyperthreading.
>
> Given that I had issues initilizing the second processor when it was enabled,
> I'm picking the answer is No, but as this is the first machine I've build
> with this feature, I just want to make sure it's not just me missing some
> configuration somewhere.
>
>
> HP Prolient ML350
> Dial P4 Xeon 2.2Ghz

OSR506 has no awareness of hyperthreading. In order to enable it you
would have to install two licenses for each physical CPU (i.e. one for
each logical CPU) -- 4 total for your box.

Once you did that, as far as I know it should "work", but again, it has
_no_ awareness of hyperthreading. You have 2 physical CPUs, so 4
logical CPUs. Suppose you had two CPU-intensive processes running at a
particular time. You would want them running on separate physical CPUs.
If they're on two logical CPUs of the same physical CPU, they'll get no
more than (perhaps) 1.2 CPU's worth of power, instead of 2.0. But
OSR506 isn't aware of that and makes no effort to move processes around
so they don't fight over a single physical CPU.

Thus, there _might_ exist workloads which would run faster on a box with
hyperthreading enabled, but you can't generally expect a performance
benefit. And for that dubious benefit you have to pay for two extra SCO
SMP licenses.

You may be thinking "what about OSR507?" I answer: beats me. There was
a lot of talk about having it recognize hyperthreading, not count
logical CPUs as extra CPUs for license purposes, and have some sort of
intelligence about scheduling processes to appropriate processors. I
simply don't know whether or not any of that has been implemented.

>Bela<

Stuart J. Browne

unread,
Dec 23, 2002, 6:25:35 PM12/23/02
to

"Bela Lubkin" <be...@caldera.com> wrote in message
news:2002121917...@mammoth.ca.caldera.com...

> Stuart J. Browne wrote:
>
> > I've had a quick read through the posts recently, and I've not seen one
> > stating whether OSR5.0.6 does or does not support Hyperthreading.
> >
> > Given that I had issues initilizing the second processor when it was
enabled,
> > I'm picking the answer is No, but as this is the first machine I've build
> > with this feature, I just want to make sure it's not just me missing some
> > configuration somewhere.
> >
> >
> > HP Prolient ML350
> > Dial P4 Xeon 2.2Ghz
>
> OSR506 has no awareness of hyperthreading. In order to enable it you
> would have to install two licenses for each physical CPU (i.e. one for
> each logical CPU) -- 4 total for your box.
>
> Once you did that, as far as I know it should "work", but again, it has
> _no_ awareness of hyperthreading. You have 2 physical CPUs, so 4
> logical CPUs. Suppose you had two CPU-intensive processes running at a
> particular time. You would want them running on separate physical CPUs.
> If they're on two logical CPUs of the same physical CPU, they'll get no
> more than (perhaps) 1.2 CPU's worth of power, instead of 2.0. But
> OSR506 isn't aware of that and makes no effort to move processes around
> so they don't fight over a single physical CPU.

Actually, with Hyperthreading enabled, the OS refused to initlize the second
processor (either virtual or phyiscal).

'cpuonoff -c' reported 'disabled' for CPU2.

Bela Lubkin

unread,
Dec 23, 2002, 10:02:57 PM12/23/02
to sco...@xenitec.on.ca
Stuart J. Browne wrote:

Ah, I forgot about that whole aspect of it...

_Some_ BIOSes for Pentium 4 family CPUs that support Hyperthreading (HT)
set the CPUs up in a manner that OSR5 supports. Others do not. The
technical detail: OSR5 supports the Intel MultiProcessing Specification,
versions 1.1 and 1.4 (MPS 1.1 / 1.4). An MPS-compliant BIOS sets up a
particular table that shows what CPUs are available. Intel has chosen
not to support MPS with the HT CPUs. They instead provide an ACPI
(Advanced Configuration and Power Interface) table of CPUs.

Originally Intel told us that BIOS support for HT CPUs would never
provide MPS tables. This was not true of the prototype machines with
prototype BIOSes -- those machines provided both kinds of table. Now
that the machines are actually shipping, it seems that most of them
provide an MPS table when HT is disabled. _Some_ still provide it when
HT is enabled; others don't.

OSR5 will only see CPUs (beyond the first one) if MPS tables are
present.

ACPI is a large, complex mess. Even just using it to find CPUs is a big
deal. We were doing some work on this, but I don't know whether it made
it into OSR507. Even if it did, there are still no smarts about
scheduling processes properly on HT CPUs, so you'd not likely see any
benefits.

But you originally asked:

> > > I just want to make sure it's not just me missing some
> > > configuration somewhere.

... you might be. If the BIOS gives you a choice of MPS vs. ACPI CPU
tables, choose MPS. I'm pretty sure the common BIOSes can be built to
offer that choice, it comes down to a question of how they were
_actually_ built.

>Bela<

0 new messages