Re: Rescheduling interrupts

From: Matt Mackall
Date: Tue Jan 22 2008 - 12:05:17 EST



On Tue, 2008-01-22 at 17:05 +0100, Ingo Molnar wrote:
> * S.ÃaÄlar Onur <caglar@xxxxxxxxxxxxx> wrote:
>
> > > My theory is that for whatever reason we get "repeat" IPIs: multiple
> > > reschedule IPIs although the other CPU only initiated one.
> >
> > Ok, please see http://cekirdek.pardus.org.tr/~caglar/dmesg.3rd :)
>
> hm, the IPI sending and receiving is nicely paired up:
>
> [ 625.795008] IPI (@smp_reschedule_interrupt) from task swapper:0 on CPU#1:
> [ 625.795223] IPI (@native_smp_send_reschedule) from task amarokapp:2882 on CPU#1:
>
> amarokapp does wake up threads every 20 microseconds - that could
> explain it. It's probably Xorg running on one core, amarokapp on the
> other core. That's already 100 reschedules/sec.

That suggests we want an "anti-load-balancing" heuristic when CPU usage
is very low. Migrating everything onto one core when we're close to idle
will save power and probably reduce latencies.

--
Mathematics is the supreme nostalgia of our time.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/