On Sun, Feb 20, 2005 at 10:55:18PM +0100, Sven Neumann <sven@xxxxxxxx> wrote: > mean that it's a stupid pthread implementation. To me this looks like > the kernel believes that it would be better to keep the threads local > than to move one to the other CPU. Linux will not keep two threads running on a single cpu if both are ready and nothing else is running, regardless of locality etc., as the kernel lacks the tools to effectively decide wether threads should stay on a cpu or not. (I mean, it's of course bad to interlave operations on a per-pixel basis instead of e.g. a per-tile basis, but the kernel will run the threads concurrently wether or not it gets slower). > right and using two CPUs would actually cause more overhead than it's > worth? That's quite possible, but IFF the kernel indeed keeps the two threads on a single cpu then it means that both aren't ready at the same time, e.g. due to lock contention or other things. -- The choice of a -----==- _GNU_ ----==-- _ generation Marc Lehmann ---==---(_)__ __ ____ __ pcg@xxxxxxxx --==---/ / _ \/ // /\ \/ / http://schmorp.de/ -=====/_/_//_/\_,_/ /_/\_\ XX11-RIPE