Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1540976 > unrolled thread

Re: [RFD] sched/deadline: Support single CPU affinity

Started byPeter Zijlstra <peterz@infradead.org>
First post2016-12-13 11:30 +0100
Last post2016-12-15 13:20 +0100
Articles 3 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  Re: [RFD] sched/deadline: Support single CPU affinity Peter Zijlstra <peterz@infradead.org> - 2016-12-13 11:30 +0100
    Re: [RFD] sched/deadline: Support single CPU affinity Tommaso Cucinotta <tommaso.cucinotta@sssup.it> - 2016-12-15 12:40 +0100
      Re: [RFD] sched/deadline: Support single CPU affinity Peter Zijlstra <peterz@infradead.org> - 2016-12-15 13:20 +0100

#1540976 — Re: [RFD] sched/deadline: Support single CPU affinity

FromPeter Zijlstra <peterz@infradead.org>
Date2016-12-13 11:30 +0100
SubjectRe: [RFD] sched/deadline: Support single CPU affinity
Message-ID<sNSvo-8sJ-21@gated-at.bofh.it>
On Thu, Nov 10, 2016 at 11:01:59AM +0100, Tommaso Cucinotta wrote:
> 
> Just a note: if you want to recover arbitrary task affinities, you can re-cast your above test like this:
> 
> for_each_processor(cpu)
>   \sum U[t]/A[t] \leq 1 (or U_max), for each task t on cpu, with utilization U[t] and A[t] tasks overall in its affinity mask
> 

Do I read it correct when I interpret A[t] as the number of CPUs in its
affinity mask?

For A[t] == 1, that reduces to the UP case:

	\Sum U[t] \leq 1

and A[t] = N that reduces to the G-EDF case:

	\Sum U[t] \leq N


Also, does recoverable mean a bound tardiness, or is that something
weaker still?

[toc] | [next] | [standalone]


#1542653

FromTommaso Cucinotta <tommaso.cucinotta@sssup.it>
Date2016-12-15 12:40 +0100
Message-ID<sOCyd-5bS-11@gated-at.bofh.it>
In reply to#1540976
Hi Peter,

On 13/12/2016 11:21, Peter Zijlstra wrote:
> On Thu, Nov 10, 2016 at 11:01:59AM +0100, Tommaso Cucinotta wrote:
>> Just a note: if you want to recover arbitrary task affinities, you can re-cast your above test like this:
>>
>> for_each_processor(cpu)
>>    \sum U[t]/A[t] \leq 1 (or U_max), for each task t on cpu, with utilization U[t] and A[t] tasks overall in its affinity mask
>>
> Do I read it correct when I interpret A[t] as the number of CPUs in its
> affinity mask?

yes, exactly, A[t] number of CPUs in the task affinity mask (sorry for my bad write-up)

> Also, does recoverable mean a bound tardiness, or is that something
> weaker still?

nope, nothing exact -- it just meant providing flexible but simple & consistent (ie, towards recovering affinity masks) options from the kernel/scheduler side, leaving more complex & exact tests to user-space, or future add-ons to the kernel.

Thanks,

     T.

[toc] | [prev] | [next] | [standalone]


#1542685

FromPeter Zijlstra <peterz@infradead.org>
Date2016-12-15 13:20 +0100
Message-ID<sODaV-5DY-15@gated-at.bofh.it>
In reply to#1542653
On Thu, Dec 15, 2016 at 12:30:43PM +0100, Tommaso Cucinotta wrote:
> Hi Peter,
> 
> On 13/12/2016 11:21, Peter Zijlstra wrote:
> >On Thu, Nov 10, 2016 at 11:01:59AM +0100, Tommaso Cucinotta wrote:
> >>Just a note: if you want to recover arbitrary task affinities, you can re-cast your above test like this:
> >>
> >>for_each_processor(cpu)
> >>   \sum U[t]/A[t] \leq 1 (or U_max), for each task t on cpu, with utilization U[t] and A[t] tasks overall in its affinity mask
> >>
> >Do I read it correct when I interpret A[t] as the number of CPUs in its
> >affinity mask?
> 
> yes, exactly, A[t] number of CPUs in the task affinity mask (sorry for my bad write-up)

n/p, I got it ;-)

> >Also, does recoverable mean a bound tardiness, or is that something
> >weaker still?
> 
> nope, nothing exact -- it just meant providing flexible but simple &
> consistent (ie, towards recovering affinity masks) options from the
> kernel/scheduler side, leaving more complex & exact tests to
> user-space, or future add-ons to the kernel.

So it would be good to get a more exact answer on what 'recoverable'
means. It cannot mean unbounded tardiness, since that implies runaway
state. It clearly doesn't mean no tardiness, as proven by the G-EDF
special case.

So I was hoping it would mean bounded, but possibly with a worse bound
than regular G-EDF.

In any case, it does provide a way to look at admission control that
might be useful. I'll have to play around with it a bit.

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web