Re: [patch] IRQ threads

From: hui
Date: Thu Jul 29 2004 - 16:17:26 EST


On Wed, Jul 28, 2004 at 05:35:57PM -0400, Scott Wood wrote:
> On Wed, Jul 28, 2004 at 02:23:14PM -0700, Bill Huey wrote:
> > That way I picture the problem permits those threads to migration across
> > CPUs and therefore kill interrupt performance from cache thrashing. Do
> > you have a solution for that ? I like the way you're doing it now with
> > irqd() in that it's CPU-local, but as you know it's not priority sensitive.
>
> Wouldn't the IRQ threads be subject to the same heuristics that the
> scheduler uses with ordinary threads, in order to avoid unnecessary
> CPU migration? Plus, IRQs ordinarily get distributed across CPUs,
> and in most cases shouldn't have a very large cache footprint
> (especially data; the code can be in multiple CPU caches at once), so
> I don't think this is a susbtantial degradation from the way things
> already are.

I get a number of gripes from SMP aware folks that the context switching
overhead is significant as well as cache issues. That's what the concern
is about.

> If desired by the user, an IRQ thread could be bound to a specific
> CPU to avoid such problems (in which case, they'd probably want to
> set the smp_affinity of the hard IRQ stub to the same CPU).

Yeah, this is an obvious next step in order to get better performance.
Do you have number showing how this logic effects overall SMP and interrupt
performance ?

I wish I could help with this, but I'm doing other things at the moment.

bill
-
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/