Re: [PATCH] sched/fair: consider sched-idle CPU when selecting idle core
From: Jiang Biao
Date: Fri Jul 24 2020 - 07:53:34 EST
On Fri, 24 Jul 2020 at 18:34, Vincent Guittot
> On Fri, 24 Jul 2020 at 10:12, Jiang Biao <benbjiang@xxxxxxxxx> wrote:
> > On Fri, 24 Jul 2020 at 15:24, Vincent Guittot
> > <vincent.guittot@xxxxxxxxxx> wrote:
> > >
> > > On Fri, 24 Jul 2020 at 01:39, Jiang Biao <humjb_1983@xxxxxxx> wrote:
> > > >
> > > > From: Jiang Biao <benbjiang@xxxxxxxxxxx>
> > > >
> > > > Sched-idle CPU has been considered in select_idle_cpu and
> > > > select_idle_smt, it also needs to be considered in select_idle_core to
> > > > be consistent and keep the same *idle* policy.
> > >
> > > In the case of select_idle_core, we are looking for a core that is
> > > fully idle but if one CPU of the core is running a sched_idle task,
> > > the core will not be idle and we might end up having the wakeup task
> > > on a CPU and a sched_idle task on another CPU of the core which is not
> > > what we want
> > Got it. sched_idle task may interfere its sibling, which brings me
> > another question,
> > If there's a core with smt1 running sched_idle task and smt2 idle,
> > selecting smt1
> > rather than smt2 should be more helpful for wakee task, because wakee task
> > could suppress the sched_idle task without neighbour interfering.
> But the sched_idle will then probably quickly move on the idle smt2
> > And there seems to be no consideration about that currently.
> > Is it worth improving that?
> This will complexify and extend the duration of the search loop and
> as mentioned above, it will most probably be a nop at the end because
> of sched_idle task moving on smt2
Indeed, the complexity is not worth.
Thanks for the explanation.
> > Thanks a lot.
> > Regards,
> > Jiang