numbers don't lie ...

Kris Kennaway kris at obsecurity.org
Wed Sep 13 10:22:55 PDT 2006


On Wed, Sep 13, 2006 at 01:00:25PM -0400, Mike Meyer wrote:

> > 	SUN X4100:	Dual Core AMD Opteron(tm) Processor 280 (2393.19-MHz K8-class CPU)
> > 			one 70g sata disk
> > 	DELL 2950:	Intel(R) Xeon(TM) CPU 3.20GHz (3192.98-MHz K8-class CPU)
> > 			4 sata disks + raid0
> > 
> > they both run identical 6.1-STABLE.
> > 
> > my 'cpu benchmark' shows the amd being much better than the intel.
> > but, doing a make buildworld give interesting results:
> > 
> > dell-2950 : make -j16 TARGET_ARCH=amd64 buildworld : 24m17.41s real 1h3m3.26s 
> > user 17m15.07s sys
> > dell-2950 : make -j8 TARGET_ARCH=amd64 buildworld : 24m8.28s real 1h2m59.38s 
> > user 16m16.20s sys
> > 
> > sunfire : make -j16 TARGET_ARCH=amd64 buildworld : 24m21.38s real 49m6.68s 
> > user 14m22.64s sys
> > sunfire : make -j8 TARGET_ARCH=amd64 buildworld : 23m47.69s real 48m53.58s 
> > user 13m44.81s sys
> > 
> > which probably says something about my 'cpu benchmark' :-(
> 
> Yes - that it's not very good at predicting performance on a parallel
> make. That's not surprising, as it's true of most benchmarks. You
> might want to check out some of the benchmarks in the ports tree as
> well.
> 
> > but why is the user time so much different between the boxes?
> 
> What's the CPU configuration? The AMD is dual core - is that it? Could
> the Xeon be dual-core and hyperthreaded, so it's got that many more
> CPUs to contribute towards user time?
> 
> To illustrate, I have numbers for "make -j4" for a P4 with and without
> hyperthreading enabled:
> 
> machdep.hyperthreading_allowed: 1 -> 0
>      50m55.99s real      35m28s.19 user       8m20s.02 sys
> machdep.hyperthreading_allowed: 0 -> 1
>      38m48s.85 real      55m2s.43 user       12m27s.90 sys
> 
> Note the effect of the second CPU on the user time.

i.e. since the hyperthreading virtual CPUs are not actually real CPUs,
they spend a lot of time blocked in the same CPU core waiting for
another hyperthread to release a resource, so the threads are both
"running" from the point of view of the OS, but one is doing no work
on the CPU a lot of the time.  This means that hyperthreading may or
may not increase your performance depending on your workload (in your
case it does).

Kris
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 187 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-hackers/attachments/20060913/5c0b796b/attachment.pgp


More information about the freebsd-hackers mailing list