From: Daniel Bristot de Oliveira <bristot@redhat.com>
To: Atul Kumar Pant <quic_atulpant@quicinc.com>,
Steven Rostedt <rostedt@goodmis.org>
Cc: rafael@kernel.org, daniel.lezcano@linaro.org, mingo@redhat.com,
peterz@infradead.org, juri.lelli@redhat.com,
vincent.guittot@linaro.org, dietmar.eggemann@arm.com,
bsegall@google.com, mgorman@suse.de, vschneid@redhat.com,
linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org,
quic_ashayj@quicinc.com, quic_rgottimu@quicinc.com,
quic_shashim@quicinc.com
Subject: Re: Prevent RT-throttling for idle-injection threads
Date: Fri, 8 Sep 2023 14:22:56 +0200 [thread overview]
Message-ID: <6e095f34-d14a-d81b-5c23-9886b8c799cd@redhat.com> (raw)
In-Reply-To: <20230908095527.GA2475625@hu-atulpant-hyd.qualcomm.com>
On 9/8/23 11:55, Atul Kumar Pant wrote:
> On Fri, Aug 11, 2023 at 11:17:19AM -0400, Steven Rostedt wrote:
>> On Tue, 8 Aug 2023 16:55:23 +0530
>> Atul Pant <quic_atulpant@quicinc.com> wrote:
>>
>>> Hi all,
>>> We are trying to implement a solution for thermal mitigation by using
>>> idle injection on CPUs. However we face some limitations with the current
>>> idle-inject framework. As per our need, we want to start injecting idle
>>> cycles on a CPU for indefinite time (until the temperature/power of the
>>> CPU falls below a threshold). This will help to keep the hot CPUs in the
>>> sleep state until we see improvement in temperature/power. If we set the
>>> idle duration to a large value or have an idle-injection ratio of 100%,
>>> then the idle-inject RT thread suffers from RT throttling. This results
>>> in the CPU exiting from the sleep state and consuming some power.
>>>
>>> The above situation can be avoided, if we can prevent RT throttling on
>>> the injected CPU. With the currently available sysctl parameters,
>>> sched_rt_runtime_us and sched_rt_period_us, we can prevent RT throttling
>>> by either setting sched_rt_runtime_us equal to sched_rt_period_us or,
>>> setting sched_rt_runtime_us to -1. Since these parameters are system
>>> wide, so it will affect the RT tasks on non idle-injected CPUs as well.
>>> To overcome this, will it be feasible to have these two parameters on a
>>> per CPU basis? This will allow to selectively disable RT throttling on
>>> idle-injected CPUs.
>> I wonder if the deadline scheduler that Daniel is working on would help in this case?
> Are you referring to this thread regarding SCHED_DEADLINE server?
> https://lore.kernel.org/all/cover.1686239016.git.bristot@kernel.org/T/#u
>
Yep, but the v4... this will replace rt throttling, and it already has per-cpu arguments.
https://lore.kernel.org/lkml/20230906082952.GB38741@noisy.programming.kicks-ass.net/t/
-- Daniel
prev parent reply other threads:[~2023-09-08 12:23 UTC|newest]
Thread overview: 4+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-08-08 11:25 Prevent RT-throttling for idle-injection threads Atul Pant
2023-08-11 15:17 ` Steven Rostedt
2023-09-08 9:55 ` Atul Kumar Pant
2023-09-08 12:22 ` Daniel Bristot de Oliveira [this message]
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=6e095f34-d14a-d81b-5c23-9886b8c799cd@redhat.com \
--to=bristot@redhat.com \
--cc=bsegall@google.com \
--cc=daniel.lezcano@linaro.org \
--cc=dietmar.eggemann@arm.com \
--cc=juri.lelli@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pm@vger.kernel.org \
--cc=mgorman@suse.de \
--cc=mingo@redhat.com \
--cc=peterz@infradead.org \
--cc=quic_ashayj@quicinc.com \
--cc=quic_atulpant@quicinc.com \
--cc=quic_rgottimu@quicinc.com \
--cc=quic_shashim@quicinc.com \
--cc=rafael@kernel.org \
--cc=rostedt@goodmis.org \
--cc=vincent.guittot@linaro.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