[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <6e095f34-d14a-d81b-5c23-9886b8c799cd@redhat.com>
Date: Fri, 8 Sep 2023 14:22:56 +0200
From: Daniel Bristot de Oliveira <bristot@...hat.com>
To: Atul Kumar Pant <quic_atulpant@...cinc.com>,
Steven Rostedt <rostedt@...dmis.org>
Cc: rafael@...nel.org, daniel.lezcano@...aro.org, mingo@...hat.com,
peterz@...radead.org, juri.lelli@...hat.com,
vincent.guittot@...aro.org, dietmar.eggemann@....com,
bsegall@...gle.com, mgorman@...e.de, vschneid@...hat.com,
linux-pm@...r.kernel.org, linux-kernel@...r.kernel.org,
quic_ashayj@...cinc.com, quic_rgottimu@...cinc.com,
quic_shashim@...cinc.com
Subject: Re: Prevent RT-throttling for idle-injection threads
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@...cinc.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
Powered by blists - more mailing lists