Re: [RFC PATCH] sched: Pass affine target cpu into wake_affine

From: Lin Ming
Date: Thu Jan 07 2010 - 21:54:42 EST


On Thu, 2010-01-07 at 21:14 +0800, Mike Galbraith wrote:
> On Thu, 2010-01-07 at 16:45 +0800, Lin Ming wrote:
> > On Tue, 2010-01-05 at 14:43 +0800, Mike Galbraith wrote:
> > > On Tue, 2010-01-05 at 04:44 +0100, Mike Galbraith wrote:
> > > > On Tue, 2010-01-05 at 10:48 +0800, Lin Ming wrote:
> > > > > On Mon, 2010-01-04 at 17:03 +0800, Lin Ming wrote:
> > > > > > commit a03ecf08d7bbdd979d81163ea13d194fe21ad339
> > > > > > Author: Lin Ming <ming.m.lin@xxxxxxxxx>
> > > > > > Date: Mon Jan 4 14:14:50 2010 +0800
> > > > > >
> > > > > > sched: Pass affine target cpu into wake_affine
> > > > > >
> > > > > > Since commit a1f84a3(sched: Check for an idle shared cache in select_task_rq_fair()),
> > > > > > the affine target maybe adjusted to any idle cpu in cache sharing domains
> > > > > > instead of current cpu.
> > > > > > But wake_affine still use current cpu to calculate load which is wrong.
> > > > > >
> > > > > > This patch passes affine cpu into wake_affine.
> > > > > >
> > > > > > Signed-off-by: Lin Ming <ming.m.lin@xxxxxxxxx>
> > > > >
> > > > > Mike,
> > > > >
> > > > > Any comment of this patch?
> > > >
> > > > The patch definitely looks like the right thing to do, but when I tried
> > > > this, it didn't work out well. Since I can't seem to recall precise
> > > > details, I'll let my box either remind me or give it's ack.
> > >
> > > Unfortunately, box reminded me. mysql+oltp peak throughput with
> > > nr_clients == nr_cpus
> >
> > Did you test with your vmark regression fix patch also applied?
>
> Below is a complete retest. Mind testing my hacklet? I bet a nickle
> it'll work at least as well as yours on your beefy boxen.

I tested your hacklet on below 2 machines as before.

Tigerton x86_64 machine: 16cpus(4P/4Cores), 40G mem
IA64 machine: 32cpus(4P/4Cores/HT), 16G mem

Test1: vmark regression fix patch + pass affine target
Test2: this hacklet

Compared with upstream 2.6.33-rc2,
Test1: Tigerton +3%, IA64 +15%
Test2: Tigerton +3%, IA64 +10%

The test2 also improves on IA64, although not as good as test1.

I also tested tbench, this hacklet does not help.

Lin Ming

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