From: Qais Yousef <qyousef@layalina.io>
To: Juri Lelli <juri.lelli@redhat.com>
Cc: Dietmar Eggemann <dietmar.eggemann@arm.com>,
Christian Loehle <christian.loehle@arm.com>,
Jon Hunter <jonathanh@nvidia.com>,
Thierry Reding <treding@nvidia.com>,
Waiman Long <longman@redhat.com>, Tejun Heo <tj@kernel.org>,
Johannes Weiner <hannes@cmpxchg.org>,
Michal Koutny <mkoutny@suse.com>, Ingo Molnar <mingo@redhat.com>,
Peter Zijlstra <peterz@infradead.org>,
Vincent Guittot <vincent.guittot@linaro.org>,
Steven Rostedt <rostedt@goodmis.org>,
Ben Segall <bsegall@google.com>, Mel Gorman <mgorman@suse.de>,
Valentin Schneider <vschneid@redhat.com>,
Phil Auld <pauld@redhat.com>,
Sebastian Andrzej Siewior <bigeasy@linutronix.de>,
"Joel Fernandes (Google)" <joel@joelfernandes.org>,
Suleiman Souhlal <suleiman@google.com>,
Aashish Sharma <shraash@google.com>,
Shin Kawamura <kawasin@google.com>,
Vineeth Remanan Pillai <vineeth@bitbyteword.org>,
linux-kernel@vger.kernel.org, cgroups@vger.kernel.org,
"linux-tegra@vger.kernel.org" <linux-tegra@vger.kernel.org>
Subject: Re: [PATCH v2 3/2] sched/deadline: Check bandwidth overflow earlier for hotplug
Date: Tue, 25 Feb 2025 00:02:37 +0000 [thread overview]
Message-ID: <20250225000237.nsgbibqigl6nhhdu@airbuntu> (raw)
In-Reply-To: <Z7w7g1zb0nfu9-C7@jlelli-thinkpadt14gen4.remote.csb>
On 02/24/25 10:27, Juri Lelli wrote:
> > Okay I see. The issue though is that for a DL system with power management
> > features on that warrant to wake up a sugov thread to update the frequency is
> > sort of half broken by design. I don't see the benefit over using RT in this
> > case. But I appreciate I could be misguided. So take it easy on me if it is
> > obviously wrong understanding :) I know in Android usage of DL has been
> > difficult, but many systems ship with slow switch hardware.
> >
> > How does DL handle the long softirqs from block and network layers by the way?
> > This has been in a practice a problem for RT tasks so they should be to DL.
> > sugov done in stopper should be handled similarly IMHO. I *think* it would be
> > simpler to masquerade sugov thread as irq pressure.
>
> Kind of a trick question :), as DL doesn't handle this kind of
:-)
> load/pressure explicitly. It is essentially agnostic about it. From a
> system design point of view though, I would say that one should take
> that into account and maybe convert sensible kthreads to DL, so that the
> overall bandwidth can be explicitly evaluated. If one doesn't do that
> probably a less sound approach is to treat anything not explicitly
> scheduled by DL, but still required from a system perspective, as
> overload and be more conservative when assigning bandwidth to DL tasks
> (i.e. reduce the maximum amount of available bandwidth, so that the
> system doesn't get saturated).
Maybe I didn't understand your initial answer properly. But what I got is that
we set as DL to do what you just suggested of converting it kthread to DL to
take its bandwidth into account. But we have been lying about bandwidth so far
and it was ignored? (I saw early bailouts of SCHED_FLAG_SUGOV was set in
bandwidth related operations)
>
> > You can use the rate_limit_us as a potential guide for how much bandwidth sugov
> > needs if moving it to another class really doesn't make sense instead?
>
> Or maybe try to estimate/measure how much utilization sugov threads are
> effectively using while running some kind of workload of interest and
> use that as an indication for DL runtime/period.
I don't want to side track this thread. So maybe I should start a new thread to
discuss this. You might have seen my other series on consolidating cpufreq
updates. I'm not sure sugov can have a predictable period. Maybe runtime, but
it could run repeatedly, or it could be quite for a long time.
TBH I always though we use DL because it was the highest sched_class that is
not a stopper.
Anyway. Happy to take this discussion into another thread if this is better.
I didn't mean to distract from debugging the reported issue.
Thanks!
--
Qais Yousef
next prev parent reply other threads:[~2025-02-25 0:02 UTC|newest]
Thread overview: 80+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-11-14 14:28 [PATCH v2 0/2] Fix DEADLINE bandwidth accounting in root domain changes and hotplug Juri Lelli
2024-11-14 14:28 ` [PATCH v2 1/2] sched/deadline: Restore dl_server bandwidth on non-destructive root domain changes Juri Lelli
2024-11-14 15:56 ` Phil Auld
2024-11-14 14:28 ` [PATCH v2 2/2] sched/deadline: Correctly account for allocated bandwidth during hotplug Juri Lelli
2024-11-14 15:58 ` Phil Auld
2024-12-06 10:43 ` Dan Carpenter
2024-12-09 14:20 ` Juri Lelli
2024-11-14 15:48 ` [PATCH v2 0/2] Fix DEADLINE bandwidth accounting in root domain changes and hotplug Waiman Long
2024-11-14 16:14 ` Juri Lelli
2024-11-14 18:16 ` Waiman Long
2024-11-14 18:43 ` Phil Auld
2024-11-15 11:48 ` [PATCH v2 3/2] sched/deadline: Check bandwidth overflow earlier for hotplug Juri Lelli
2025-01-10 11:52 ` Jon Hunter
2025-01-10 15:45 ` Juri Lelli
2025-01-10 18:40 ` Jon Hunter
2025-01-13 9:32 ` Juri Lelli
2025-01-13 13:53 ` Jon Hunter
2025-01-14 13:52 ` Jon Hunter
2025-01-14 14:02 ` Juri Lelli
2025-01-15 16:10 ` Juri Lelli
2025-01-16 13:14 ` Jon Hunter
2025-01-16 15:55 ` Juri Lelli
2025-02-03 11:01 ` Jon Hunter
2025-02-04 17:26 ` Juri Lelli
2025-02-05 6:53 ` Juri Lelli
2025-02-05 10:12 ` Juri Lelli
2025-02-05 16:56 ` Jon Hunter
2025-02-06 9:29 ` Juri Lelli
2025-02-07 10:38 ` Jon Hunter
2025-02-07 13:38 ` Dietmar Eggemann
2025-02-07 14:04 ` Jon Hunter
2025-02-07 15:55 ` Christian Loehle
2025-02-10 17:09 ` Juri Lelli
2025-02-11 8:36 ` Dietmar Eggemann
2025-02-11 9:21 ` Juri Lelli
2025-02-11 10:43 ` Dietmar Eggemann
2025-02-11 10:15 ` Christian Loehle
2025-02-11 10:42 ` Juri Lelli
2025-02-12 18:22 ` Dietmar Eggemann
2025-02-13 6:20 ` Juri Lelli
2025-02-13 12:27 ` Christian Loehle
2025-02-13 13:33 ` Juri Lelli
2025-02-13 13:38 ` Christian Loehle
2025-02-13 14:51 ` Juri Lelli
2025-02-13 14:57 ` Christian Loehle
2025-02-16 16:33 ` Qais Yousef
2025-02-17 14:52 ` Juri Lelli
2025-02-22 23:59 ` Qais Yousef
2025-02-24 9:27 ` Juri Lelli
2025-02-25 0:02 ` Qais Yousef [this message]
2025-02-25 9:46 ` Juri Lelli
2025-02-25 10:09 ` Christian Loehle
2025-02-12 23:01 ` Jon Hunter
2025-02-13 6:16 ` Juri Lelli
2025-02-13 9:53 ` Jon Hunter
2025-02-14 10:05 ` Jon Hunter
2025-02-17 16:08 ` Juri Lelli
2025-02-17 16:10 ` Jon Hunter
2025-02-17 16:25 ` Juri Lelli
2025-02-18 9:58 ` Juri Lelli
2025-02-18 10:30 ` Juri Lelli
2025-02-18 14:12 ` Dietmar Eggemann
2025-02-18 14:18 ` Juri Lelli
2025-02-19 9:29 ` Dietmar Eggemann
2025-02-19 10:02 ` Juri Lelli
2025-02-19 11:23 ` Jon Hunter
2025-02-19 13:09 ` Dietmar Eggemann
2025-02-19 18:14 ` Dietmar Eggemann
2025-02-20 10:40 ` Juri Lelli
2025-02-20 15:25 ` Juri Lelli
2025-02-21 11:56 ` Jon Hunter
2025-02-21 14:45 ` Dietmar Eggemann
2025-02-24 13:53 ` Dietmar Eggemann
2025-02-24 14:03 ` Juri Lelli
2025-02-24 23:39 ` Jon Hunter
2025-02-25 9:48 ` Juri Lelli
2025-03-03 14:17 ` Jon Hunter
2025-03-03 16:00 ` Juri Lelli
2025-02-07 14:04 ` Jon Hunter
2025-02-07 15:52 ` Juri Lelli
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250225000237.nsgbibqigl6nhhdu@airbuntu \
--to=qyousef@layalina.io \
--cc=bigeasy@linutronix.de \
--cc=bsegall@google.com \
--cc=cgroups@vger.kernel.org \
--cc=christian.loehle@arm.com \
--cc=dietmar.eggemann@arm.com \
--cc=hannes@cmpxchg.org \
--cc=joel@joelfernandes.org \
--cc=jonathanh@nvidia.com \
--cc=juri.lelli@redhat.com \
--cc=kawasin@google.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=longman@redhat.com \
--cc=mgorman@suse.de \
--cc=mingo@redhat.com \
--cc=mkoutny@suse.com \
--cc=pauld@redhat.com \
--cc=peterz@infradead.org \
--cc=rostedt@goodmis.org \
--cc=shraash@google.com \
--cc=suleiman@google.com \
--cc=tj@kernel.org \
--cc=treding@nvidia.com \
--cc=vincent.guittot@linaro.org \
--cc=vineeth@bitbyteword.org \
--cc=vschneid@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox