[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20201021150800.GG32041@suse.de>
Date: Wed, 21 Oct 2020 16:08:00 +0100
From: Mel Gorman <mgorman@...e.de>
To: Julia Lawall <julia.lawall@...ia.fr>
Cc: Vincent Guittot <vincent.guittot@...aro.org>,
Ingo Molnar <mingo@...hat.com>,
kernel-janitors@...r.kernel.org,
Peter Zijlstra <peterz@...radead.org>,
Juri Lelli <juri.lelli@...hat.com>,
Dietmar Eggemann <dietmar.eggemann@....com>,
Steven Rostedt <rostedt@...dmis.org>,
Ben Segall <bsegall@...gle.com>,
Daniel Bristot de Oliveira <bristot@...hat.com>,
linux-kernel@...r.kernel.org,
Valentin Schneider <valentin.schneider@....com>,
Gilles Muller <Gilles.Muller@...ia.fr>
Subject: Re: [PATCH] sched/fair: check for idle core
On Wed, Oct 21, 2020 at 03:24:48PM +0200, Julia Lawall wrote:
> > I worry it's overkill because prev is always used if it is idle even
> > if it is on a node remote to the waker. It cuts off the option of a
> > wakee moving to a CPU local to the waker which is not equivalent to the
> > original behaviour.
>
> But it is equal to the original behavior in the idle prev case if you go
> back to the runnable load average days...
>
It is similar but it misses the sync treatment and sd->imbalance_pct part of
wake_affine_weight which has unpredictable consequences. The data
available is only on the fully utilised case.
> The problem seems impossible to solve, because there is no way to know by
> looking only at prev and this whether the thread would prefer to stay
> where it was or go to the waker.
>
Yes, this is definitely true. Looking at prev_cpu and this_cpu is a
crude approximation and the path is heavily limited in terms of how
clever it can be.
--
Mel Gorman
SUSE Labs
Powered by blists - more mailing lists