Re: [REGRESSION] sched/fair: Reimplement NEXT_BUDDY to align with EEVDF goals
From: Peter Zijlstra
Date: Mon Jan 12 2026 - 04:57:40 EST
On Mon, Jan 12, 2026 at 08:52:17AM +0000, Ryan Roberts wrote:
> On 12/01/2026 07:47, Peter Zijlstra wrote:
> > On Fri, Jan 09, 2026 at 10:15:46AM +0000, Ryan Roberts wrote:
> >
> >> Here are the updated results, now including column for "revert #1 & #2".
> >>
> >> 6-18-0 (base) (baseline)
> >> 6-19-0-rc1 (New NEXT_BUDDY implementation enabled)
> >> revert #1 & #2 (NEXT_BUDDY disabled)
> >> revert #2 (Old NEXT_BUDDY implementation enabled)
> >>
> >>
> >> The regressions that are fixed by "revert #2" (as originally reported) are still
> >> fixed in "revert #1 & #2". Interestingly, performance actually improves further
> >> for the latter in the multi-node mysql benchmark (which is our VIP workload).
> >> There are a couple of hackbench cases (sockets with high thread counts) that
> >> showed an improvement with "revert #2" but which is gone with "revert #1 & #2".
> >>
> >> Let me know if I can usefully do anything else.
> >
> > If its not too much bother, could you run 6.19-rc with SCHED_BATCH ? The
> > defining characteristic of BATCH is that it fully ignores wakeup
> > preemption.
>
> Is there a way I can force all future tasks to use SCHED_BATCH at the system
> level? (a Kconfig, cmdline arg or sysfs toggle?) If so that would be simple for
> me to do. But if I need to invoke the top level command with chrt -b and hope
> that nothing in the workload explicitly changes the scheduling policy that would
> be both trickier for me to do and (I guess) higher risk that it ends up not
> doing what I expected. Happy to give whatever you recommend a try...
No fancy things here, chrt/schedtool are it.