[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20161129144609.GB1716@e105550-lin.cambridge.arm.com>
Date: Tue, 29 Nov 2016 14:46:10 +0000
From: Morten Rasmussen <morten.rasmussen@....com>
To: Peter Zijlstra <peterz@...radead.org>
Cc: Vincent Guittot <vincent.guittot@...aro.org>, mingo@...nel.org,
linux-kernel@...r.kernel.org, matt@...eblueprint.co.uk,
dietmar.eggemann@....com, kernellwp@...il.com, yuyang.du@...el.com,
umgwanakikbuti@...il.com
Subject: Re: [PATCH 1/2 v2] sched: fix find_idlest_group for fork
On Tue, Nov 29, 2016 at 12:42:43PM +0100, Peter Zijlstra wrote:
> On Tue, Nov 29, 2016 at 10:57:59AM +0000, Morten Rasmussen wrote:
> > > @@ -5708,13 +5708,6 @@ static int select_idle_cpu(struct task_struct *p, struct sched_domain *sd, int t
> > >
> > > avg_cost = this_sd->avg_scan_cost;
> > >
> > > - /*
> > > - * Due to large variance we need a large fuzz factor; hackbench in
> > > - * particularly is sensitive here.
> > > - */
> > > - if ((avg_idle / 512) < avg_cost)
> > > - return -1;
> > > -
> > > time = local_clock();
> > >
> > > for_each_cpu_wrap(cpu, sched_domain_span(sd), target, wrap) {
> >
> > I don't quite get this fix, but it is very likely because I haven't paid
> > enough attention.
> >
> > Are you saying that removing the avg_cost check is improving hackbench
> > performance? I thought it was supposed to help hackbench? I'm confused
> > :-(
>
> IIRC, and my pounding head really doesn't remember much, the comment
> reads like we need the large fudge factor because hackbench. That is,
> hackbench would like this test to go away, but others benchmarks will
> tank.
Thanks, that seems in line with Vincent's reply.
The last bit that isn't clear to me is whether /512 is a 'large' fuzz
factor. I guess it is, as we can have many wake-ups, i.e. many times
avg_cost, over the period where avg_idle is calculated. No?
Powered by blists - more mailing lists