Re: [PATCH V3 1/2] sched: Reduce the default slice to avoid tasks getting an extra tick
From: Qais Yousef
Date: Mon Feb 10 2025 - 18:05:11 EST
On 02/10/25 10:13, Peter Zijlstra wrote:
> On Mon, Feb 10, 2025 at 01:29:31AM +0000, Qais Yousef wrote:
>
> > I brought the topic up of these magic values with Peter and Vincent in LPC as
> > I think this logic is confusing. I have nothing against your patch, but if the
> > maintainers agree I am in favour of removing it completely in favour of setting
> > it to a single value that is the same across all systems.
>
> You're talking about the scaling, right?
Right.
>
> Yeah, it is of limited use. The cap at 8, combined with the fact that
> its really hard to find a machine with less than 8 CPUs on, makes the
> whole thing mostly useless.
Yes. The minimum bar of modern hardware is higher now. And generally IMHO this
value depends on workload. NR_CPUs can make an overloaded case harder, but it
really wouldn't take much to saturate 8 CPUs compared to 2 CPUs. And from
experience the larger the machine the larger the workload, so the worst case
scenario of having to slice won't be in practice too much different. Especially
many programmers look at NR_CPUs and spawn as many threads..
Besides with EAS we force packing, so we artificially force contention to save
power.
Dynamically depending on rq->hr_nr_runnable looks attractive but I think this
is a recipe for more confusion. We sort of had this with sched_period, the new
fixed model is better IMHO.
>
> Back when we did this, we still had dual-core laptops. Now phones have
> 8 or more CPUs on.
>
> So I don't think I mind ripping it out.
Great!