2002-10-16 17:16:32

by Mark Cuss

[permalink] [raw]
Subject: Kernel reports 4 CPUS instead of 2...

Hello all

I'm working with a new Dell Poweredge 4600 Server with Dual CPUs. However,
Linux reports that it sees 4 CPUs... I have opened the thing to see if Dell
gave me 2 extras for free, but no luck: Attached is /proc/cpuinfo.

I've tried the RedHat 8.0 stock kernel, as well as a freshly compiled 2.4.19
but both exhibit the same behavior.

The specifics on the machine:

Dual Xeon 2.2 GHz CPUs (512 k L2 cache)
2 Gigs DDR RAM
The chipset is a ServerWorks CMIC-HE (see attached lspci for complete
listing).

Has anyone else seen this behavior? The only other SMP machine I have is an
older Dell server with Dual 1 GHz coppermines, and it reports 2 CPUs...

Any information or advice is greatly appreciated...

Thanks in Advance,

Mark


Mark Cuss
Real Time Systems Analyst
CDL Systems Ltd.
Suite 230
3553 - 31 Street NW
Calgary, Alberta
T2L 2K7

Phone (403) 289-1733 extension 226
Email: [email protected]
URL: http://www.cdlsystems.com


Attachments:
pe4600 (1.64 kB)
lspci (1.11 kB)
Download all attachments

2002-10-16 17:21:48

by FD Cami

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

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

Mark Cuss wrote:
| Hello all
|
| I'm working with a new Dell Poweredge 4600 Server with Dual CPUs.
However,
| Linux reports that it sees 4 CPUs... I have opened the thing to see
if Dell
| gave me 2 extras for free, but no luck: Attached is /proc/cpuinfo.
|
| I've tried the RedHat 8.0 stock kernel, as well as a freshly compiled
2.4.19
| but both exhibit the same behavior.
|
| The specifics on the machine:
|
| Dual Xeon 2.2 GHz CPUs (512 k L2 cache)
| 2 Gigs DDR RAM
| The chipset is a ServerWorks CMIC-HE (see attached lspci for complete
| listing).
|
| Has anyone else seen this behavior? The only other SMP machine I have
is an
| older Dell server with Dual 1 GHz coppermines, and it reports 2 CPUs...
|
| Any information or advice is greatly appreciated...
|
| Thanks in Advance,
|
| Mark

What you're seeing there is HyperThreading in action...

|
| Mark Cuss
| Real Time Systems Analyst
| CDL Systems Ltd.
| Suite 230
| 3553 - 31 Street NW
| Calgary, Alberta
| T2L 2K7
|
| Phone (403) 289-1733 extension 226
| Email: [email protected]
| URL: http://www.cdlsystems.com


- --

F. CAMI
- ----------------------------------------------------------
~ "To disable the Internet to save EMI and Disney is the
moral equivalent of burning down the library of Alexandria
to ensure the livelihood of monastic scribes."
~ - John Ippolito (Guggenheim)
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.0.7 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iD8DBQE9raWMuBGY13rZQM8RAoHMAKCE7vuPRls9Qx8tn/n8jkO6rivxjgCgsTfQ
6vyXt5MXJFQT+zvVzxObQsA=
=7Kkn
-----END PGP SIGNATURE-----

2002-10-16 17:29:24

by Richard B. Johnson

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

On Wed, 16 Oct 2002, Mark Cuss wrote:

> Hello all
>
> I'm working with a new Dell Poweredge 4600 Server with Dual CPUs. However,
> Linux reports that it sees 4 CPUs... I have opened the thing to see if Dell
> gave me 2 extras for free, but no luck: Attached is /proc/cpuinfo.
>
> I've tried the RedHat 8.0 stock kernel, as well as a freshly compiled 2.4.19
> but both exhibit the same behavior.
>
> The specifics on the machine:
>
> Dual Xeon 2.2 GHz CPUs (512 k L2 cache)
> 2 Gigs DDR RAM
> The chipset is a ServerWorks CMIC-HE (see attached lspci for complete
> listing).
>
> Has anyone else seen this behavior? The only other SMP machine I have is an
> older Dell server with Dual 1 GHz coppermines, and it reports 2 CPUs...
>
> Any information or advice is greatly appreciated...
>
> Thanks in Advance,
>
> Mark
>

This has become a FAQ. The processors are capable of so-called
"hyperthreading". They have two execution units, therefore seem
like two CPUs.

This is the correct behavior. If you don't like this, you can
swap motherboards with me ;) Otherwise, grin and bear it!


Cheers,
Dick Johnson
Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
The US military has given us many words, FUBAR, SNAFU, now ENRON.
Yes, top management were graduates of West Point and Annapolis.

2002-10-16 17:30:22

by Joel Jaeggli

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

disable hyper-threading in your bios if you want to see two cpu's...

otherwise see:

http://developer.intel.com/technology/hyperthread/

practically speaking you may see a performance hit in some application
mixes from having it enabled.

joelja

On Wed, 16 Oct 2002, Mark Cuss wrote:

> Hello all
>
> I'm working with a new Dell Poweredge 4600 Server with Dual CPUs. However,
> Linux reports that it sees 4 CPUs... I have opened the thing to see if Dell
> gave me 2 extras for free, but no luck: Attached is /proc/cpuinfo.
>
> I've tried the RedHat 8.0 stock kernel, as well as a freshly compiled 2.4.19
> but both exhibit the same behavior.
>
> The specifics on the machine:
>
> Dual Xeon 2.2 GHz CPUs (512 k L2 cache)
> 2 Gigs DDR RAM
> The chipset is a ServerWorks CMIC-HE (see attached lspci for complete
> listing).
>
> Has anyone else seen this behavior? The only other SMP machine I have is an
> older Dell server with Dual 1 GHz coppermines, and it reports 2 CPUs...
>
> Any information or advice is greatly appreciated...
>
> Thanks in Advance,
>
> Mark
>
>
> Mark Cuss
> Real Time Systems Analyst
> CDL Systems Ltd.
> Suite 230
> 3553 - 31 Street NW
> Calgary, Alberta
> T2L 2K7
>
> Phone (403) 289-1733 extension 226
> Email: [email protected]
> URL: http://www.cdlsystems.com
>

--
--------------------------------------------------------------------------
Joel Jaeggli Academic User Services [email protected]
-- PGP Key Fingerprint: 1DE9 8FCA 51FB 4195 B42A 9C32 A30D 121E --
In Dr. Johnson's famous dictionary patriotism is defined as the last
resort of the scoundrel. With all due respect to an enlightened but
inferior lexicographer I beg to submit that it is the first.
-- Ambrose Bierce, "The Devil's Dictionary"


2002-10-16 17:40:34

by Mark Cuss

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

Ah I see...

Thanks! I take it that it is "safe" to leave this turned on... The kernel
knows how to correctly handle the hyper-threading stuff?

Mark

----- Original Message -----
From: "Joel Jaeggli" <[email protected]>
To: "Mark Cuss" <[email protected]>
Cc: <[email protected]>
Sent: Wednesday, October 16, 2002 11:37 AM
Subject: Re: Kernel reports 4 CPUS instead of 2...


> disable hyper-threading in your bios if you want to see two cpu's...
>
> otherwise see:
>
> http://developer.intel.com/technology/hyperthread/
>
> practically speaking you may see a performance hit in some application
> mixes from having it enabled.
>
> joelja
>
> On Wed, 16 Oct 2002, Mark Cuss wrote:
>
> > Hello all
> >
> > I'm working with a new Dell Poweredge 4600 Server with Dual CPUs.
However,
> > Linux reports that it sees 4 CPUs... I have opened the thing to see if
Dell
> > gave me 2 extras for free, but no luck: Attached is /proc/cpuinfo.
> >
> > I've tried the RedHat 8.0 stock kernel, as well as a freshly compiled
2.4.19
> > but both exhibit the same behavior.
> >
> > The specifics on the machine:
> >
> > Dual Xeon 2.2 GHz CPUs (512 k L2 cache)
> > 2 Gigs DDR RAM
> > The chipset is a ServerWorks CMIC-HE (see attached lspci for complete
> > listing).
> >
> > Has anyone else seen this behavior? The only other SMP machine I have
is an
> > older Dell server with Dual 1 GHz coppermines, and it reports 2 CPUs...
> >
> > Any information or advice is greatly appreciated...
> >
> > Thanks in Advance,
> >
> > Mark
> >
> >
> > Mark Cuss
> > Real Time Systems Analyst
> > CDL Systems Ltd.
> > Suite 230
> > 3553 - 31 Street NW
> > Calgary, Alberta
> > T2L 2K7
> >
> > Phone (403) 289-1733 extension 226
> > Email: [email protected]
> > URL: http://www.cdlsystems.com
> >
>
> --
> --------------------------------------------------------------------------
> Joel Jaeggli Academic User Services [email protected]
> -- PGP Key Fingerprint: 1DE9 8FCA 51FB 4195 B42A 9C32 A30D 121E --
> In Dr. Johnson's famous dictionary patriotism is defined as the last
> resort of the scoundrel. With all due respect to an enlightened but
> inferior lexicographer I beg to submit that it is the first.
> -- Ambrose Bierce, "The Devil's Dictionary"
>
>
>

2002-10-16 17:48:49

by Richard B. Johnson

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

On Wed, 16 Oct 2002, Samuel Flory wrote:

> >
> >
> >On Wed, 16 Oct 2002, Mark Cuss wrote:
> >
> >
> >
> >
> >This is the correct behavior. If you don't like this, you can
> >swap motherboards with me ;) Otherwise, grin and bear it!
> >
> >
> >
>
> Wouldn't it be easier just to turn off the hypertreading or jackson
> tech option in the bios ;-)
>

Why would you ever want to turn it off? You paid for a CPU with
two execution units and you want to disable one? This makes
no sense unless you are using Windows/2000/Professional, which
will trash your disks and all their files if you have two
or more CPUs (true).


Cheers,
Dick Johnson
Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
The US military has given us many words, FUBAR, SNAFU, now ENRON.
Yes, top management were graduates of West Point and Annapolis.

2002-10-16 17:43:28

by Samuel Flory

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

>
>
>On Wed, 16 Oct 2002, Mark Cuss wrote:
>
>
>
>
>This is the correct behavior. If you don't like this, you can
>swap motherboards with me ;) Otherwise, grin and bear it!
>
>
>

Wouldn't it be easier just to turn off the hypertreading or jackson
tech option in the bios ;-)


2002-10-16 18:02:30

by Samuel Flory

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

Richard B. Johnson wrote:

>On Wed, 16 Oct 2002, Samuel Flory wrote:
>
>
>
>>>On Wed, 16 Oct 2002, Mark Cuss wrote:
>>>
>>>
>>>
>>>
>>>This is the correct behavior. If you don't like this, you can
>>>swap motherboards with me ;) Otherwise, grin and bear it!
>>>
>>>
>>>
>>>
>>>
>>
>> Wouldn't it be easier just to turn off the hypertreading or jackson
>>tech option in the bios ;-)
>>
>>
>>
>
>Why would you ever want to turn it off? You paid for a CPU with
>two execution units and you want to disable one? This makes
>no sense unless you are using Windows/2000/Professional, which
>will trash your disks and all their files if you have two
>or more CPUs (true).
>
>
>

Actually I can think of 3 obvious reasons:

1)Your app is cache bound, and not cpu bound.
2)Your system tends to only run 1 or 2 non thread activities at a time.
3)You don't trust hyperthreading.


2002-10-16 18:02:59

by Nakajima, Jun

[permalink] [raw]
Subject: RE: Kernel reports 4 CPUS instead of 2...

Actually, execution resources are not doubled, but typically shared on an
HT-capable processor. There are two architecture states (registers, APIC,
etc.) in a processor package.

Thanks,
Jun

-----Original Message-----
From: Richard B. Johnson [mailto:[email protected]]
Sent: Wednesday, October 16, 2002 10:55 AM
To: Samuel Flory
Cc: Mark Cuss; [email protected]
Subject: Re: Kernel reports 4 CPUS instead of 2...


On Wed, 16 Oct 2002, Samuel Flory wrote:

> >
> >
> >On Wed, 16 Oct 2002, Mark Cuss wrote:
> >
> >
> >
> >
> >This is the correct behavior. If you don't like this, you can
> >swap motherboards with me ;) Otherwise, grin and bear it!
> >
> >
> >
>
> Wouldn't it be easier just to turn off the hypertreading or jackson
> tech option in the bios ;-)
>

Why would you ever want to turn it off? You paid for a CPU with
two execution units and you want to disable one? This makes
no sense unless you are using Windows/2000/Professional, which
will trash your disks and all their files if you have two
or more CPUs (true).


Cheers,
Dick Johnson
Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
The US military has given us many words, FUBAR, SNAFU, now ENRON.
Yes, top management were graduates of West Point and Annapolis.

2002-10-16 18:29:18

by Mark Cuss

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

Thanks guys for all the info on the hyperthreading stuff. I don't think I
want to switch motherboards, sorry ;)

My experience with this new technology is quite limited (to the last 5 or so
hours ;), so sorry for the silly questions...

Mark

----- Original Message -----
From: "Samuel Flory" <[email protected]>
To: <[email protected]>
Cc: "Mark Cuss" <[email protected]>; <[email protected]>
Sent: Wednesday, October 16, 2002 11:56 AM
Subject: Re: Kernel reports 4 CPUS instead of 2...


> >
> >
> >On Wed, 16 Oct 2002, Mark Cuss wrote:
> >
> >
> >
> >
> >This is the correct behavior. If you don't like this, you can
> >swap motherboards with me ;) Otherwise, grin and bear it!
> >
> >
> >
>
> Wouldn't it be easier just to turn off the hypertreading or jackson
> tech option in the bios ;-)
>
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>

2002-10-16 19:23:41

by James Cleverdon

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

On Wednesday 16 October 2002 10:54 am, Richard B. Johnson wrote:
> On Wed, 16 Oct 2002, Samuel Flory wrote:
> > >On Wed, 16 Oct 2002, Mark Cuss wrote:
> > >
> > >This is the correct behavior. If you don't like this, you can
> > >swap motherboards with me ;) Otherwise, grin and bear it!
> >
> > Wouldn't it be easier just to turn off the hypertreading or jackson
> > tech option in the bios ;-)
>
> Why would you ever want to turn it off? You paid for a CPU with
> two execution units and you want to disable one? This makes
> no sense unless you are using Windows/2000/Professional, which
> will trash your disks and all their files if you have two
> or more CPUs (true).

No, you're thinking of IBM's Power4 chip, which really does have two CPU cores
on one chip, sharing only the L2 cache.

The P4 hyperthreading shares just about all CPU resources between the two
threads of execution. There are only separate registers, local APIC, and
some other minor logic for each "CPU" to call its own. All execution units
are demand shared between them. (The new "pause" opcode, rep nop, allows one
half to yield resources to the other half.)

That's why typical job mixes only get around 20% improvement. Even optimized
benchmarks, which run only integer code on one side and floating point on the
other only get around a 40% boost. The P4 just doesn't have all that many
execution units to go around. Future chips will probably do better.

> Cheers,
> Dick Johnson
> Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
> The US military has given us many words, FUBAR, SNAFU, now ENRON.
> Yes, top management were graduates of West Point and Annapolis.


--
James Cleverdon
IBM xSeries Linux Solutions
{jamesclv(Unix, preferred), cleverdj(Notes)} at us dot ibm dot com

2002-10-16 19:36:43

by Mark Cuss

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

Speaking of performance.... :)

Has anyone done any testing on a dual CPU configuration like this? I've
been testing this box with both the RedHat 8 Stock Kernel (2.4.18.something)
and 2.4.19 from kernel.org. Currently, I can't make the thing perform
anywhere near as fast as my Dual PIII 1 Ghz box (running 2.4.7 for the last
325 days...) . I've been compiling the same block of code on both the
machines and comparing the times. The PIII box is around 7 s, while the new
Xeon Box is 13 or 14s...

My thinking was that since the CPUs are much faster, and the FSB is faster,
and the disk controller is faster, that the computer would be faster.

The hardware is obviously faster, I'm sure its just something I've done
wrong in the kernel configuration... If anyone has any advice or words of
wisdom, I'd really appreciate them...

Thanks in advance,

Mark

----- Original Message -----
From: "James Cleverdon" <[email protected]>
To: <[email protected]>; "Samuel Flory" <[email protected]>
Cc: "Mark Cuss" <[email protected]>; <[email protected]>
Sent: Wednesday, October 16, 2002 1:28 PM
Subject: Re: Kernel reports 4 CPUS instead of 2...


> On Wednesday 16 October 2002 10:54 am, Richard B. Johnson wrote:
> > On Wed, 16 Oct 2002, Samuel Flory wrote:
> > > >On Wed, 16 Oct 2002, Mark Cuss wrote:
> > > >
> > > >This is the correct behavior. If you don't like this, you can
> > > >swap motherboards with me ;) Otherwise, grin and bear it!
> > >
> > > Wouldn't it be easier just to turn off the hypertreading or jackson
> > > tech option in the bios ;-)
> >
> > Why would you ever want to turn it off? You paid for a CPU with
> > two execution units and you want to disable one? This makes
> > no sense unless you are using Windows/2000/Professional, which
> > will trash your disks and all their files if you have two
> > or more CPUs (true).
>
> No, you're thinking of IBM's Power4 chip, which really does have two CPU
cores
> on one chip, sharing only the L2 cache.
>
> The P4 hyperthreading shares just about all CPU resources between the two
> threads of execution. There are only separate registers, local APIC, and
> some other minor logic for each "CPU" to call its own. All execution
units
> are demand shared between them. (The new "pause" opcode, rep nop, allows
one
> half to yield resources to the other half.)
>
> That's why typical job mixes only get around 20% improvement. Even
optimized
> benchmarks, which run only integer code on one side and floating point on
the
> other only get around a 40% boost. The P4 just doesn't have all that many
> execution units to go around. Future chips will probably do better.
>
> > Cheers,
> > Dick Johnson
> > Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
> > The US military has given us many words, FUBAR, SNAFU, now ENRON.
> > Yes, top management were graduates of West Point and Annapolis.
>
>
> --
> James Cleverdon
> IBM xSeries Linux Solutions
> {jamesclv(Unix, preferred), cleverdj(Notes)} at us dot ibm dot com
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>

2002-10-16 20:04:47

by Richard B. Johnson

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

On Wed, 16 Oct 2002, Mark Cuss wrote:

> Speaking of performance.... :)
>
> Has anyone done any testing on a dual CPU configuration like this? I've
> been testing this box with both the RedHat 8 Stock Kernel (2.4.18.something)
> and 2.4.19 from kernel.org. Currently, I can't make the thing perform
> anywhere near as fast as my Dual PIII 1 Ghz box (running 2.4.7 for the last
> 325 days...) . I've been compiling the same block of code on both the
> machines and comparing the times. The PIII box is around 7 s, while the new
> Xeon Box is 13 or 14s...
>
> My thinking was that since the CPUs are much faster, and the FSB is faster,
> and the disk controller is faster, that the computer would be faster.
>
> The hardware is obviously faster, I'm sure its just something I've done
> wrong in the kernel configuration... If anyone has any advice or words of
> wisdom, I'd really appreciate them...
>
> Thanks in advance,
>
> Mark


Try using the exact same disk drive(s) with both mother-boards if
you are looking at compile-times for comparison. Use the same drive(s)
when testing both motherboards.



Cheers,
Dick Johnson
Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
The US military has given us many words, FUBAR, SNAFU, now ENRON.
Yes, top management were graduates of West Point and Annapolis.

2002-10-16 20:34:55

by Samuel Flory

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

Mark Cuss wrote:

>Speaking of performance.... :)
>
>Has anyone done any testing on a dual CPU configuration like this? I've
>been testing this box with both the RedHat 8 Stock Kernel (2.4.18.something)
>and 2.4.19 from kernel.org. Currently, I can't make the thing perform
>anywhere near as fast as my Dual PIII 1 Ghz box (running 2.4.7 for the last
>325 days...) . I've been compiling the same block of code on both the
>machines and comparing the times. The PIII box is around 7 s, while the new
>Xeon Box is 13 or 14s...
>
>My thinking was that since the CPUs are much faster, and the FSB is faster,
>and the disk controller is faster, that the computer would be faster.
>
>The hardware is obviously faster, I'm sure its just something I've done
>wrong in the kernel configuration... If anyone has any advice or words of
>wisdom, I'd really appreciate them...
>
>

Try shutting off hyperthreading in the bios. Keep in mind
hyperthreading is net loss if you are running a single nonthreaded app.
Also you might want to check if there aren't io speed issues.

A good way to see the effects positive effects of hyperthreading is a
kernel compile. A "make -j 4 bzImage" should be much much faster on the
Xeon system with hyperthreading than a P3.

>
>Mark
>
>----- Original Message -----
>From: "James Cleverdon" <[email protected]>
>To: <[email protected]>; "Samuel Flory" <[email protected]>
>Cc: "Mark Cuss" <[email protected]>; <[email protected]>
>Sent: Wednesday, October 16, 2002 1:28 PM
>Subject: Re: Kernel reports 4 CPUS instead of 2...
>
>
>
>
>>On Wednesday 16 October 2002 10:54 am, Richard B. Johnson wrote:
>>
>>
>>>On Wed, 16 Oct 2002, Samuel Flory wrote:
>>>
>>>
>>>>>On Wed, 16 Oct 2002, Mark Cuss wrote:
>>>>>
>>>>>This is the correct behavior. If you don't like this, you can
>>>>>swap motherboards with me ;) Otherwise, grin and bear it!
>>>>>
>>>>>
>>>> Wouldn't it be easier just to turn off the hypertreading or jackson
>>>>tech option in the bios ;-)
>>>>
>>>>
>>>Why would you ever want to turn it off? You paid for a CPU with
>>>two execution units and you want to disable one? This makes
>>>no sense unless you are using Windows/2000/Professional, which
>>>will trash your disks and all their files if you have two
>>>or more CPUs (true).
>>>
>>>
>>No, you're thinking of IBM's Power4 chip, which really does have two CPU
>>
>>
>cores
>
>
>>on one chip, sharing only the L2 cache.
>>
>>The P4 hyperthreading shares just about all CPU resources between the two
>>threads of execution. There are only separate registers, local APIC, and
>>some other minor logic for each "CPU" to call its own. All execution
>>
>>
>units
>
>
>>are demand shared between them. (The new "pause" opcode, rep nop, allows
>>
>>
>one
>
>
>>half to yield resources to the other half.)
>>
>>That's why typical job mixes only get around 20% improvement. Even
>>
>>
>optimized
>
>
>>benchmarks, which run only integer code on one side and floating point on
>>
>>
>the
>
>
>>other only get around a 40% boost. The P4 just doesn't have all that many
>>execution units to go around. Future chips will probably do better.
>>
>>
>>
>>>Cheers,
>>>Dick Johnson
>>>Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
>>>The US military has given us many words, FUBAR, SNAFU, now ENRON.
>>>Yes, top management were graduates of West Point and Annapolis.
>>>
>>>
>>--
>>James Cleverdon
>>IBM xSeries Linux Solutions
>>{jamesclv(Unix, preferred), cleverdj(Notes)} at us dot ibm dot com
>>
>>-
>>To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>>the body of a message to [email protected]
>>More majordomo info at http://vger.kernel.org/majordomo-info.html
>>Please read the FAQ at http://www.tux.org/lkml/
>>
>>
>>
>
>
>
>



2002-10-16 21:41:07

by Mark Mielke

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

On Wed, Oct 16, 2002 at 01:47:32PM -0700, Samuel Flory wrote:
> Try shutting off hyperthreading in the bios. Keep in mind
> hyperthreading is net loss if you are running a single nonthreaded app.
> Also you might want to check if there aren't io speed issues.

Is this true? It seems to me that the 'on-demand execution units' would
simply be devoted to the one task, resulting in zero loss.

I see hyperthreading becoming a problem if two threads are scheduled to
execute at the same time before the operating system, and if they each
need access to the same execution units at the same time.

mark

--
[email protected]/[email protected]/[email protected] __________________________
. . _ ._ . . .__ . . ._. .__ . . . .__ | Neighbourhood Coder
|\/| |_| |_| |/ |_ |\/| | |_ | |/ |_ |
| | | | | \ | \ |__ . | | .|. |__ |__ | \ |__ | Ottawa, Ontario, Canada

One ring to rule them all, one ring to find them, one ring to bring them all
and in the darkness bind them...

http://mark.mielke.cc/

2002-10-16 22:01:44

by Samuel Flory

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

Mark Mielke wrote:

>On Wed, Oct 16, 2002 at 01:47:32PM -0700, Samuel Flory wrote:
>
>
>> Try shutting off hyperthreading in the bios. Keep in mind
>>hyperthreading is net loss if you are running a single nonthreaded app.
>>Also you might want to check if there aren't io speed issues.
>>
>>
>
>Is this true? It seems to me that the 'on-demand execution units' would
>simply be devoted to the one task, resulting in zero loss.
>
>

In perfect world yes, but in reality there is overhead. I've tested
this on a quad xeon. A "make bzImage" is a bit faster with
hyperthreading off. Of course a make -j 8 bzImage is faster with
hyperthreading on. I haven't tried this on a dual xeon. (It could be a
scaling issue 4 vs 8 processors.)

>I see hyperthreading becoming a problem if two threads are scheduled to
>execute at the same time before the operating system, and if they each
>need access to the same execution units at the same time.
>
>
And if both threads need different items in L(whatever) cache it gets
even worse.

There are a few good overviews on the subject:
http://www.intel.com/technology/hyperthread/
http://arstechnica.com/paedia/h/hyperthreading/hyperthreading-1.html
http://www.anandtech.com/cpu/showdoc.html?i=1576&p=2

2002-10-16 22:13:27

by Mark Cuss

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

It turns out that some part of Red Hat 8 was at fault.

I installed Red Hat 7.3 and compiled a custom 2.4.19 kernel.

Speaking of the previous compile test: The dual PIII 1 Gig box took 9.2s to
compile my test block of code... The new Dual Xeon 2.2 now takes 4.26 s
(with hyperthreading. Its about 1/2 a second slower without) - thats better
than double. I'm not sure if its just the kernel that was running slower on
Red Hat 8, or maybe gcc 3.2 is just a lot slower than 2.96...



Thanks to everyone for your help

Mark

----- Original Message -----
From: "Samuel Flory" <[email protected]>
To: <[email protected]>
Cc: <[email protected]>; <[email protected]>;
<[email protected]>
Sent: Wednesday, October 16, 2002 2:47 PM
Subject: Re: Kernel reports 4 CPUS instead of 2...


> Mark Cuss wrote:
>
> >Speaking of performance.... :)
> >
> >Has anyone done any testing on a dual CPU configuration like this? I've
> >been testing this box with both the RedHat 8 Stock Kernel
(2.4.18.something)
> >and 2.4.19 from kernel.org. Currently, I can't make the thing perform
> >anywhere near as fast as my Dual PIII 1 Ghz box (running 2.4.7 for the
last
> >325 days...) . I've been compiling the same block of code on both the
> >machines and comparing the times. The PIII box is around 7 s, while the
new
> >Xeon Box is 13 or 14s...
> >
> >My thinking was that since the CPUs are much faster, and the FSB is
faster,
> >and the disk controller is faster, that the computer would be faster.
> >
> >The hardware is obviously faster, I'm sure its just something I've done
> >wrong in the kernel configuration... If anyone has any advice or words
of
> >wisdom, I'd really appreciate them...
> >
> >
>
> Try shutting off hyperthreading in the bios. Keep in mind
> hyperthreading is net loss if you are running a single nonthreaded app.
> Also you might want to check if there aren't io speed issues.
>
> A good way to see the effects positive effects of hyperthreading is a
> kernel compile. A "make -j 4 bzImage" should be much much faster on the
> Xeon system with hyperthreading than a P3.
>
> >
> >Mark
> >
> >----- Original Message -----
> >From: "James Cleverdon" <[email protected]>
> >To: <[email protected]>; "Samuel Flory" <[email protected]>
> >Cc: "Mark Cuss" <[email protected]>; <[email protected]>
> >Sent: Wednesday, October 16, 2002 1:28 PM
> >Subject: Re: Kernel reports 4 CPUS instead of 2...
> >
> >
> >
> >
> >>On Wednesday 16 October 2002 10:54 am, Richard B. Johnson wrote:
> >>
> >>
> >>>On Wed, 16 Oct 2002, Samuel Flory wrote:
> >>>
> >>>
> >>>>>On Wed, 16 Oct 2002, Mark Cuss wrote:
> >>>>>
> >>>>>This is the correct behavior. If you don't like this, you can
> >>>>>swap motherboards with me ;) Otherwise, grin and bear it!
> >>>>>
> >>>>>
> >>>> Wouldn't it be easier just to turn off the hypertreading or jackson
> >>>>tech option in the bios ;-)
> >>>>
> >>>>
> >>>Why would you ever want to turn it off? You paid for a CPU with
> >>>two execution units and you want to disable one? This makes
> >>>no sense unless you are using Windows/2000/Professional, which
> >>>will trash your disks and all their files if you have two
> >>>or more CPUs (true).
> >>>
> >>>
> >>No, you're thinking of IBM's Power4 chip, which really does have two CPU
> >>
> >>
> >cores
> >
> >
> >>on one chip, sharing only the L2 cache.
> >>
> >>The P4 hyperthreading shares just about all CPU resources between the
two
> >>threads of execution. There are only separate registers, local APIC,
and
> >>some other minor logic for each "CPU" to call its own. All execution
> >>
> >>
> >units
> >
> >
> >>are demand shared between them. (The new "pause" opcode, rep nop,
allows
> >>
> >>
> >one
> >
> >
> >>half to yield resources to the other half.)
> >>
> >>That's why typical job mixes only get around 20% improvement. Even
> >>
> >>
> >optimized
> >
> >
> >>benchmarks, which run only integer code on one side and floating point
on
> >>
> >>
> >the
> >
> >
> >>other only get around a 40% boost. The P4 just doesn't have all that
many
> >>execution units to go around. Future chips will probably do better.
> >>
> >>
> >>
> >>>Cheers,
> >>>Dick Johnson
> >>>Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
> >>>The US military has given us many words, FUBAR, SNAFU, now ENRON.
> >>>Yes, top management were graduates of West Point and Annapolis.
> >>>
> >>>
> >>--
> >>James Cleverdon
> >>IBM xSeries Linux Solutions
> >>{jamesclv(Unix, preferred), cleverdj(Notes)} at us dot ibm dot com
> >>
> >>-
> >>To unsubscribe from this list: send the line "unsubscribe linux-kernel"
in
> >>the body of a message to [email protected]
> >>More majordomo info at http://vger.kernel.org/majordomo-info.html
> >>Please read the FAQ at http://www.tux.org/lkml/
> >>
> >>
> >>
> >
> >
> >
> >
>
>
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>

2002-10-16 23:16:20

by Bryan Whitehead

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

My /proc/cpuinfo says I have ht CPU's... but i only see 2 CPU's... (Yet
I have 2 1.7Ghz XEONs in the box so shouldn't I see 4?)

It's a Dell Precisions 530 workstation.

Does intel have ht CPU's that are messed up? and I'm one of the "lucky
ones". ?

Building a kernel myself did not help... Any idea's?

[driver@mulan ~]$ cat /proc/cpuinfo
processor : 0
vendor_id : GenuineIntel
cpu family : 15
model : 1
model name : Intel(R) Xeon(TM) CPU 1.70GHz
stepping : 2
cpu MHz : 1694.863
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
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 : 3381.65

processor : 1
vendor_id : GenuineIntel
cpu family : 15
model : 1
model name : Intel(R) Xeon(TM) CPU 1.70GHz
stepping : 2
cpu MHz : 1694.863
cache size : 256 KB
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
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 : 3381.65


Richard B. Johnson wrote:
> On Wed, 16 Oct 2002, Mark Cuss wrote:
>
>
>>Hello all
>>
>>I'm working with a new Dell Poweredge 4600 Server with Dual CPUs. However,
>>Linux reports that it sees 4 CPUs... I have opened the thing to see if Dell
>>gave me 2 extras for free, but no luck: Attached is /proc/cpuinfo.
>>
>>I've tried the RedHat 8.0 stock kernel, as well as a freshly compiled 2.4.19
>>but both exhibit the same behavior.
>>
>>The specifics on the machine:
>>
>>Dual Xeon 2.2 GHz CPUs (512 k L2 cache)
>>2 Gigs DDR RAM
>>The chipset is a ServerWorks CMIC-HE (see attached lspci for complete
>>listing).
>>
>>Has anyone else seen this behavior? The only other SMP machine I have is an
>>older Dell server with Dual 1 GHz coppermines, and it reports 2 CPUs...
>>
>>Any information or advice is greatly appreciated...
>>
>>Thanks in Advance,
>>
>>Mark
>>
>
>
> This has become a FAQ. The processors are capable of so-called
> "hyperthreading". They have two execution units, therefore seem
> like two CPUs.
>
> This is the correct behavior. If you don't like this, you can
> swap motherboards with me ;) Otherwise, grin and bear it!
>
>
> Cheers,
> Dick Johnson
> Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
> The US military has given us many words, FUBAR, SNAFU, now ENRON.
> Yes, top management were graduates of West Point and Annapolis.
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/


--
Bryan Whitehead
SysAdmin - JPL - Interferometry Systems and Technology
Phone: 818 354 2903
[email protected]

2002-10-17 00:28:51

by Mark Chernault

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

On Wed, 2002-10-16 at 17:21, Bryan Whitehead wrote:
> My /proc/cpuinfo says I have ht CPU's... but i only see 2 CPU's... (Yet
> I have 2 1.7Ghz XEONs in the box so shouldn't I see 4?)
>
> It's a Dell Precisions 530 workstation.
>
> Does intel have ht CPU's that are messed up? and I'm one of the "lucky
> ones". ?

Intel lists the Xeon with a 256KB cache as a workstation processor, and
indicate that it doesn't do hyperthreading. They indicate that you need
to buy the higher end Xeons to use hyperthreading. I don't know if this
is similar to AMD and the Athlon XP, Athlon MP; or, they really don't do
hyperthreading.

If someone knows how to get hyperthreading working on Xeons with a 256KB
cache I'd love to know. We have a cluster of these running on
SuperMicro P4DC6's that I'd like to try hyperthreading on. The
motherboards don't have a bios setting for hyperthreading
though.

http://www.intel.com/design/Xeon/prodbref/

>
> Building a kernel myself did not help... Any idea's?
>
> [driver@mulan ~]$ cat /proc/cpuinfo
> processor : 0
> vendor_id : GenuineIntel
> cpu family : 15
> model : 1
> model name : Intel(R) Xeon(TM) CPU 1.70GHz
> stepping : 2
> cpu MHz : 1694.863
> cache size : 256 KB
> fdiv_bug : no
> hlt_bug : no
> f00f_bug : no
> coma_bug : no
> fpu : yes
> fpu_exception : yes
> cpuid level : 2
> wp : yes
> 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 : 3381.65
>
> processor : 1
> vendor_id : GenuineIntel
> cpu family : 15
> model : 1
> model name : Intel(R) Xeon(TM) CPU 1.70GHz
> stepping : 2
> cpu MHz : 1694.863
> cache size : 256 KB
> fdiv_bug : no
> hlt_bug : no
> f00f_bug : no
> coma_bug : no
> fpu : yes
> fpu_exception : yes
> cpuid level : 2
> wp : yes
> 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 : 3381.65
>
>
> Richard B. Johnson wrote:
> > On Wed, 16 Oct 2002, Mark Cuss wrote:
> >
> >
> >>Hello all
> >>
> >>I'm working with a new Dell Poweredge 4600 Server with Dual CPUs. However,
> >>Linux reports that it sees 4 CPUs... I have opened the thing to see if Dell
> >>gave me 2 extras for free, but no luck: Attached is /proc/cpuinfo.
> >>
> >>I've tried the RedHat 8.0 stock kernel, as well as a freshly compiled 2.4.19
> >>but both exhibit the same behavior.
> >>
> >>The specifics on the machine:
> >>
> >>Dual Xeon 2.2 GHz CPUs (512 k L2 cache)
> >>2 Gigs DDR RAM
> >>The chipset is a ServerWorks CMIC-HE (see attached lspci for complete
> >>listing).
> >>
> >>Has anyone else seen this behavior? The only other SMP machine I have is an
> >>older Dell server with Dual 1 GHz coppermines, and it reports 2 CPUs...
> >>
> >>Any information or advice is greatly appreciated...
> >>
> >>Thanks in Advance,
> >>
> >>Mark
> >>
> >
> >
> > This has become a FAQ. The processors are capable of so-called
> > "hyperthreading". They have two execution units, therefore seem
> > like two CPUs.
> >
> > This is the correct behavior. If you don't like this, you can
> > swap motherboards with me ;) Otherwise, grin and bear it!
> >
> >
> > Cheers,
> > Dick Johnson
> > Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
> > The US military has given us many words, FUBAR, SNAFU, now ENRON.
> > Yes, top management were graduates of West Point and Annapolis.
> >
> > -
> > To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> > the body of a message to [email protected]
> > More majordomo info at http://vger.kernel.org/majordomo-info.html
> > Please read the FAQ at http://www.tux.org/lkml/
>
>
> --
> Bryan Whitehead
> SysAdmin - JPL - Interferometry Systems and Technology
> Phone: 818 354 2903
> [email protected]
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to [email protected]
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
>
--
Mark Chernault <[email protected]>
Technical Assistant, COG, CS Dept., NMSU

2002-10-17 00:56:58

by Matt Domsch

[permalink] [raw]
Subject: RE: Kernel reports 4 CPUS instead of 2...

> My /proc/cpuinfo says I have ht CPU's... but i only see 2
> CPU's... (Yet
> I have 2 1.7Ghz XEONs in the box so shouldn't I see 4?)

1.8GHz Xeon and above have HyperThreading implemented. Below that
processors may show the 'ht' bit in /proc/cpuinfo, but don't actually have
HT implemented on the chip. There's a secondary call you have to make to
get the count of actual logical processors implemented - the 'ht' bit means
that the architecture is ht-capable. :-)

Thanks,
Matt

--
Matt Domsch
Sr. Software Engineer, Lead Engineer, Architect
Dell Linux Solutions http://www.dell.com/linux
Linux on Dell mailing lists @ http://lists.us.dell.com

2002-10-17 12:48:54

by Richard B. Johnson

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

On Wed, 16 Oct 2002, Bryan Whitehead wrote:

> My /proc/cpuinfo says I have ht CPU's... but i only see 2 CPU's... (Yet
> I have 2 1.7Ghz XEONs in the box so shouldn't I see 4?)
>
> It's a Dell Precisions 530 workstation.
>
> Does intel have ht CPU's that are messed up? and I'm one of the "lucky
> ones". ?
>
> Building a kernel myself did not help... Any idea's?
>
> pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm
^____ hyperstuff


Your CPU purports to "support" HT, but It doesn't "do" HT!
Maybe somebody from Intel can explain, but I heard that they
added the HT bit before they implimented hyper-threading.
Anyways, maybe you can "turn something on" in the BIOS?
If not, it's just one of those wanabees that didn't graduate
from HT School.


Cheers,
Dick Johnson
Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
The US military has given us many words, FUBAR, SNAFU, now ENRON.
Yes, top management were graduates of West Point and Annapolis.

2002-10-17 14:11:14

by Dave Jones

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

On Thu, Oct 17, 2002 at 08:56:15AM -0400, Richard B. Johnson wrote:
> > pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm
> ^____ hyperstuff
>
>
> Your CPU purports to "support" HT, but It doesn't "do" HT!
> Maybe somebody from Intel can explain, but I heard that they
> added the HT bit before they implimented hyper-threading.
> Anyways, maybe you can "turn something on" in the BIOS?

It's HT capable, but lacks the extra sibling found in the
more expensive models.

Dave

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

2002-10-17 17:09:49

by Bryan B Whitehead

[permalink] [raw]
Subject: Re: Kernel reports 4 CPUS instead of 2...

On Thu, 17 Oct 2002, Richard B. Johnson wrote:

> On Wed, 16 Oct 2002, Bryan Whitehead wrote:
>
> > My /proc/cpuinfo says I have ht CPU's... but i only see 2 CPU's... (Yet
> > I have 2 1.7Ghz XEONs in the box so shouldn't I see 4?)
> >
> > It's a Dell Precisions 530 workstation.
> >
> > Does intel have ht CPU's that are messed up? and I'm one of the "lucky
> > ones". ?
> >
> > Building a kernel myself did not help... Any idea's?
> >
> > pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm
> ^____ hyperstuff
>
>
> Your CPU purports to "support" HT, but It doesn't "do" HT!
> Maybe somebody from Intel can explain, but I heard that they
> added the HT bit before they implimented hyper-threading.
> Anyways, maybe you can "turn something on" in the BIOS?
> If not, it's just one of those wanabees that didn't graduate
> from HT School.

FWIW, I don't have a HT option in my bios. i just updated the bios to the
latest version from Dell and still no option.

Maybe they put the wrong CPU's into my workstation that is classified to
not have HT XEON Cpus?

If that's the case, can I tweak something to ignore the bios and turn on
HT?

Anyway, I'm sure it's an Intel thing.... 1-bit never made me feel so
ripped off... ;)

>
>
> Cheers,
> Dick Johnson
> Penguin : Linux version 2.4.18 on an i686 machine (797.90 BogoMips).
> The US military has given us many words, FUBAR, SNAFU, now ENRON.
> Yes, top management were graduates of West Point and Annapolis.
>

--
Bryan Whitehead
SysAdmin - JPL - Interferometry Systems and Technology
Phone: 818 354 2903
[email protected]