Re: [PATCH] cpufreq: schedutil: rate limits for SCHED_DEADLINE

From: Rafael J. Wysocki
Date: Fri Feb 09 2018 - 06:04:54 EST


On Fri, Feb 9, 2018 at 11:53 AM, Juri Lelli <juri.lelli@xxxxxxxxxx> wrote:
> Hi,
>
> On 09/02/18 11:36, Rafael J. Wysocki wrote:
>> On Friday, February 9, 2018 9:02:34 AM CET Claudio Scordino wrote:
>> > Hi Viresh,
>> >
>> > Il 09/02/2018 04:51, Viresh Kumar ha scritto:
>> > > On 08-02-18, 18:01, Claudio Scordino wrote:
>> > >> When the SCHED_DEADLINE scheduling class increases the CPU utilization,
>> > >> we should not wait for the rate limit, otherwise we may miss some deadline.
>> > >>
>> > >> Tests using rt-app on Exynos5422 have shown reductions of about 10% of deadline
>> > >> misses for tasks with low RT periods.
>> > >>
>> > >> The patch applies on top of the one recently proposed by Peter to drop the
>> > >> SCHED_CPUFREQ_* flags.
>> > >>
>>
>> [cut]
>>
>> >
>> > >
>> > > Is it possible to (somehow) check here if the DL tasks will miss
>> > > deadline if we continue to run at current frequency? And only ignore
>> > > rate-limit if that is the case ?
>
> Isn't it always the case? Utilization associated to DL tasks is given by
> what the user said it's needed to meet a task deadlines (admission
> control). If that task wakes up and we realize that adding its
> utilization contribution is going to require a frequency change, we
> should _theoretically_ always do it, or it will be too late. Now, user
> might have asked for a bit more than what strictly required (this is
> usually the case to compensate for discrepancies between theory and real
> world, e.g. hw transition limits), but I don't think there is a way to
> know "how much". :/

You are right.

I'm somewhat concerned about "fast switch" cases when the rate limit
is used to reduce overhead.