Re: [RFC PATCH V3 6/6] sched/fair: Implement starvation monitor

From: Daniel Bristot de Oliveira
Date: Mon Jun 19 2023 - 10:58:28 EST


On 6/19/23 14:02, Peter Zijlstra wrote:
> On Fri, Jun 16, 2023 at 02:05:07PM +0200, Peter Zijlstra wrote:
>> On Tue, Jun 13, 2023 at 03:41:30PM +0200, Daniel Bristot de Oliveira wrote:
>>
>>> In an 0-laxity scheduler, the server would run at 0-laxity, jumping in
>>> front of DL tasks... that would break EDF. It would be mixing two
>>> schedulers in one. It is not required and likely not a good idea either.
>>
>> I did consider a hybrid 0-laxity and EDF scheduler for mixed
>> criticality, as have others like Ted Baker IIRC. IIRC it can be done
>> using an augmented tree, but none of that solves the problems 0-laxity
>> has (like over preemption and the general problem of playing chicken by
>> doing things at the *VERY* last possible moment).
>>
>> I think I did a talk at OSPERT on this at some point many years ago.
>> Luckily some bright fellow had this semi-partitioned stuff that would
>> make live much simpler :-)
>
> I must clarify; I was thinking Least-Laxity-First, which is ofcourse not
> the same as a 0-laxity scheduler.

ok, least-laxity-first is another thing... I think the 0-laxity came from the need
to wait until that point in time to deffer the dl server for the throttling case only...
not as a scheduler.

but still, the vast majority of research is concentrated on EDF. The laxity depends
on the runtime. As the task consumes runtime its laxity changes, so its priority.
With deadline only, the priority stays fixed during the job (Job level fixed priority)
It is easier to take decisions, less overheads & context switch and we can explore
things with virtual deadlines.

IIUC, the EVVDF is also uses virtual deadline abstraction, right?

-- Daniel