Hyperthreading slowdown
Wilko Bulte
wkb at freebie.xs4all.nl
Sun Oct 5 05:31:54 PDT 2003
On Sat, Oct 04, 2003 at 01:04:35PM -0700, Kris Kennaway wrote:
> On Sat, Oct 04, 2003 at 03:20:03PM -0400, Richard Coleman wrote:
> > Kris Kennaway wrote:
> > >On Sat, Oct 04, 2003 at 04:39:03PM +0200, Mikulas Patocka wrote:
> > >>I installed FreeBSD 4.9RC1 on P4 3GHz with hyperthreading and I see
> > >>drastic slowdown when kernel with hyperthreading is booted. For example
> > >>program compilation took this time:
> > >>
> > >>hyperthreading kernel, make -j 1 --- 1:09
> > >>hyperthreading kernel, make -j 2 --- 0:42
> > >>singlethreading kernel, make -j 1 --- 0:45
> > >>singlethreading kernel, make -j 2 --- 0:41
> > >>
> > >>Compilation does very few system calls so when I compile with only one
> > >>process (-j 1), it should be as fast as with singlethreading kernel. Do
> > >>you have any idea why is it so slow?
> > >
> > >Do you realise that hyperthreading != a secret extra CPU in your system?
> > >
> > >Kris
> >
> > I didn't see anywhere in the message where he implied that. To me, the
> > interesting thing is that there is such a larger difference between the
> > compile time for -j1 and -j2 when using hyperthreading as compared to
> > the difference between -j1 and -j2 for a single threaded kernel. It's
> > over a 50% slowdown.
>
> Yes, that's because (as discussed in the archives) the kernel treats
> it like an extra, completely decoupled physical CPU and schedules
> processes on it without further consideration. This is presumably the
> cause of the slowdown, because it's only efficient to use the virtual
> CPU under certain workload patterns. HTT is not magic performance
> beans.
Right. And in addition it makes the system considerably more power hungry..
I measured both with and without SMP on my P4/2.4G HTT CPU.
--
| / o / /_ _ wilko at FreeBSD.org
|/|/ / / /( (_) Bulte
More information about the freebsd-hackers
mailing list