Re: [PATCH 2/2] sched/fair: Scale wakeup granularity relative to nr_running

From: Peter Zijlstra
Date: Tue Oct 05 2021 - 11:15:42 EST


On Tue, Oct 05, 2021 at 10:12:12AM -0400, Phil Auld wrote:
> On Tue, Oct 05, 2021 at 12:36:22PM +0200 Peter Zijlstra wrote:
> > On Thu, Sep 23, 2021 at 08:24:03AM -0400, Phil Auld wrote:
> >
> > > It's capped at 8 cpus, which is pretty easy to reach these days, so the
> > > values don't get too large. That scaling is almost a no-op these days.
> >
> > https://lkml.kernel.org/r/YVwdrh5pg0zSv2/b@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
> >
> > Ooh, hey, we already fixed that :-)
> >
>
> Thanks Peter.
>
> I'm always a little behind upstream (nature of the job :)
>
> That link leads to a message Id not found.

https://lore.kernel.org/all/YVwblBZ9JBn9vvVr@xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/T/#u

Seems to work, I must've messed up the copy/paste or something.

> But from what I can see the code that takes the min of online cpus and
> 8 is still present.

Yes, and it should be. I was the confused one. I forgot we added it and
suggested we should add it again :-)

> > So the reasoning there is that if the values get too big, interactiviy
> > get *really* bad, but if you go from say 1 to 4 CPUs, interactivity can
> > improve due to being able to run on other CPUs.
> >
> > At 8 CPUs we end up at 6ms*4=24ms, which is already pretty terrible.
> >
>
> And actually you mention the same thing later on. Most systems, even
> desktops, have 8+ cpus these days so the scaling is mostly not doing
> anything except multiplying by 4, right? So no-op was not the right
> way to describe it maybe. But it's not getting bigger with larger
> numbers of cpus beyond a pretty commonly reached limit.

Yeah, the whole scaling thing is of dubious value these days, the whole
1-8 range is for embedded stuff these days, I mean, only low-end phones
are maybe even still in that range -- oh and my laptop.. :/