[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Z64di-4TaQ10GAbl@slm.duckdns.org>
Date: Thu, 13 Feb 2025 06:27:55 -1000
From: Tejun Heo <tj@...nel.org>
To: Andrea Righi <arighi@...dia.com>
Cc: Peter Zijlstra <peterz@...radead.org>,
David Vernet <void@...ifault.com>,
Changwoo Min <changwoo@...lia.com>, Neel Natu <neelnatu@...gle.com>,
Barret Rhoden <brho@...gle.com>, linux-kernel@...r.kernel.org,
kernel-team@...a.com, sched-ext@...a.com
Subject: Re: [PATCH sched_ext/for-6.15] sched_ext: Implement
SCX_OPS_ALLOW_QUEUED_WAKEUP
Hello,
On Thu, Feb 13, 2025 at 09:18:41AM +0100, Andrea Righi wrote:
> > Implement SCX_OPS_ALLOW_QUEUED_WAKEUP which allows BPF schedulers to choose
> > to enable ttwu_queue optimization.
>
> I'm wondering whether it makes sense to introduce a new SCX_OPS flag for
> this, considering that we already have the TTWU_QUEUE sched feature, that
> determines this behavior.
>
> Is this in perspective of a future scenario, when we may potentially have
> multiple scx schedulers running at the same time and they may want to set a
> different queued wakeup behavior?
It's more that it can be a breaking change for schedulers that expect
ops.select_cpu() to be called on wakeups. e.g. If we make this behavior the
default, scx_layered as of the last relesae would break in an unobvious but
serious way - it'd fail to occupy CPUs fully as it'd be skipping picking
idle CPU and pushing tasks there for a noticeable portion of wakeups on
multi-LLC machines. The same holds for most of the C schedulers.
Down the line, once everyone is onboard, we can maybe make it the default
and drop the flag but, for now, this needs to be opt-in.
Thanks.
--
tejun
Powered by blists - more mailing lists