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>