Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 5 Oct 2003 04:55:14 +0200 (CEST)
From:      Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
To:        Ian Dowse <iedowse@maths.tcd.ie>
Cc:        Kris Kennaway <kris@obsecurity.org>
Subject:   Re: Hyperthreading slowdown 
Message-ID:  <Pine.LNX.4.58.0310050452140.7806@artax.karlin.mff.cuni.cz>
In-Reply-To: <200310042256.aa22200@salmon.maths.tcd.ie>
References:  <200310042256.aa22200@salmon.maths.tcd.ie>

next in thread | previous in thread | raw e-mail | index | archive | help
> In message <20031004200435.GA60432@rot13.obsecurity.org>, Kris Kennaway writes:
> >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.
>
> Try also setting the sysctl variable "machdep.cpu_idle_hlt" to 1, as
> it doesn't help to have the idle logical CPUs spinning.

I did and it solved the problem (-j1 is as fast on hyperthreading kernel
as on singlethreading kernel). It should be default setting on
hyperthreading system (or at least there should be comment around option
HTT that people must set it), because otherwise performance is really
terrible --- the idle thread is spinning, taking half of the CPU.

Mikulas


Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.LNX.4.58.0310050452140.7806>