Re: About group scheduling for SCHED_DEADLINE

From: Peter Zijlstra
Date: Mon Oct 10 2016 - 08:04:38 EST


On Mon, Oct 10, 2016 at 12:15:58PM +0200, Peter Zijlstra wrote:
> Right, so the problem we have is unspecified SCHED_FIFO on SMP and
> historical behaviour.
>
> As you know we've extended FIFO to SMP by G-FIFO (run the m highest prio
> tasks on m CPUs). But along with that, we allow arbitrary affinity masks
> for RR/FIFO tasks.
>
> (Note that RR is broken in the G-FIFO model, but that's a different
> discussion for a different day).
>
> Now, the proposed model has identical CBS parameters for every (v)cpu of
> the cgroup. This means that a cgroup must be overprovisioned in the
> general case where nr_tasks < nr_cpus (and worse, the parameters must
> match the max task).
>
> This leads to vast amounts of wasted resources.
>
> The alternative is different but fixed parameters per cpu, but that is
> somewhat unwieldy in that it increases the configuration burden. But you
> can indeed minimize the wasted resources and deal with the affinity
> problem (AFAICT).
>

Hurm, so I think both proposals above rely on deadline servers with
single CPU affinity, something which we currently do not support at all,
and is something that should be defined/fixed first I think.