Re: [patch] sched: align rq to cacheline boundary

From: Siddha, Suresh B
Date: Tue Apr 10 2007 - 12:42:46 EST


On Tue, Apr 10, 2007 at 08:24:22AM +0200, Ingo Molnar wrote:
>
> * Siddha, Suresh B <suresh.b.siddha@xxxxxxxxx> wrote:
>
> > Align the per cpu runqueue to the cacheline boundary. This will
> > minimize the number of cachelines touched during remote wakeup.
>
> > -static DEFINE_PER_CPU(struct rq, runqueues);
> > +static DEFINE_PER_CPU(struct rq, runqueues) ____cacheline_aligned_in_smp;
>
> ouch!! Now how did _that_ slip through. The runqueues had been
> cacheline-aligned for ages. Or at least, they were supposed to be.

perhaps the per_cpu definition gave the impression of cacheline aligned too..

>
> could you see any improvement in profiles or workloads with this patch
> applied? (just curious - it's an obviously right fix)

We have seen 0.5% perf improvement on database workload on a 2 node setup.
0.5% is a very good improvement for this workload.

thanks,
suresh
-
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/