Re: [PATCH] sched, fair: Allow a small load imbalance between low utilisation SD_NUMA domains v3

From: Rik van Riel
Date: Mon Jan 06 2020 - 11:45:11 EST


On Mon, 2020-01-06 at 16:33 +0000, Mel Gorman wrote:
> On Mon, Jan 06, 2020 at 10:47:18AM -0500, Rik van Riel wrote:
> > > + imbalance_adj = (100 / (env->sd->imbalance_pct
> > > - 100)) - 1;
> > > +
> > > + /*
> > > + * Allow small imbalances when the busiest
> > > group has
> > > + * low utilisation.
> > > + */
> > > + imbalance_max = imbalance_adj << 1;
> > > + if (busiest->sum_nr_running < imbalance_max)
> > > + env->imbalance -= min(env->imbalance,
> > > imbalance_adj);
> > > + }
> > > +
> >
> > Wait, so imbalance_max is a function only of
> > env->sd->imbalance_pct, and it gets compared
> > against busiest->sum_nr_running, which is related
> > to the number of CPUs in the node?
> >
>
> It's not directly related to the number of CPUs in the node. Are you
> thinking of busiest->group_weight?

I am, because as it is right now that if condition
looks like it might never be true for imbalance_pct 115.

Presumably you put that check there for a reason, and
would like it to trigger when the amount by which a node
is busy is less than 2 * (imbalance_pct - 100).

--
All Rights Reversed.

Attachment: signature.asc
Description: This is a digitally signed message part