All of lore.kernel.org
 help / color / mirror / Atom feed
From: Luca Abeni <luca.abeni@unitn.it>
To: Henrik Austad <henrik@austad.us>, Juri Lelli <juri.lelli@arm.com>
Cc: peterz@infradead.org, rdunlap@infradead.org, mingo@redhat.com,
	raistlin@linux.it, juri.lelli@gmail.com,
	linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v3 3/4] Documentation/scheduler/sched-deadline.txt: improve and clarify AC bits
Date: Wed, 03 Sep 2014 08:49:38 +0200	[thread overview]
Message-ID: <5406BA02.20806@unitn.it> (raw)
In-Reply-To: <20140902214538.GC22581@sisyphus.home.austad.us>

Hi,

On 09/02/2014 11:45 PM, Henrik Austad wrote:
[...]
>> + On multiprocessor systems with global EDF scheduling (non partitioned
>> + systems), a sufficient test for schedulability can not be based on the
>> + utilisations (it can be shown that task sets with utilisations slightly
>> + larger than 1 can miss deadlines regardless of the number of CPUs M).
>> + However, as previously stated, enforcing that the total utilisation is smaller
>> + than M is enough to guarantee that non real-time tasks are not starved and
>> + that the tardiness of real-time tasks has an upper bound.
>
> I'd _really_ appreciate a link to a paper where all of this is presented
> and proved!
Well, my original plan was to add the bibliography in the next round of patches...
Is this ok?

[...]
>> + As already stated in Section 3, a necessary condition to be respected to
>> + correctly schedule a set of real-time tasks is that the total utilisation
>> + is smaller than M. When talking about -deadline tasks, this requires to
>> + impose that the sum of the ratio between runtime and period for all tasks
>> + is smaller than M.
>
> "This requires to impose that .." uhm, what? Drop 'to impose'.
Ok. I'll send an updated patch to Juri in few days


>> [...] Notice that the ratio runtime/period is equivalent to
>> + the utilisation of a "traditional" real-time task, and is also often
>> + referred to as "bandwidth".
>> + The interface used to control the CPU bandwidth that can be allocated
>> + to -deadline tasks is similar to the one already used for -rt
>>    tasks with real-time group scheduling (a.k.a. RT-throttling - see
>>    Documentation/scheduler/sched-rt-group.txt), and is based on readable/
>>    writable control files located in procfs (for system wide settings).
>> @@ -232,8 +285,16 @@ CONTENTS
>>    950000. With rt_period equal to 1000000, by default, it means that -deadline
>>    tasks can use at most 95%, multiplied by the number of CPUs that compose the
>>    root_domain, for each root_domain.
>> -
>> - A -deadline task cannot fork.
>> + This means that non -deadline tasks will receive at least 5% of the CPU time,
>> + and that -deadline tasks will receive their runtime with a guaranteed
>> + worst-case delay respect to the "deadline" parameter. If "deadline" = "period"
>> + and the cpuset mechanism is used to implement partitioned scheduling (see
>> + Section 5), then this simple setting of the bandwidth management is able to
>> + deterministically guarantee that -deadline tasks will receive their runtime
>> + in a period.
>
> The whole 950000 / 1000000, is at least 50 *consecutive* ms given to non
> rt/dl tasks every second, or is this more finegrained now?
>
> If the 50ms can be given in a single go, then I don't think you can
> guarantee that deadline-tasks will receive their runtime in a period - a
> period can be <50ms, no?
Uhmm... Maybe there is something I am missing in how the SCHED_DEADLINE admission
control is implemented, but I do not know about any "50 consecutive ms to non dl
tasks" rule. I agree that if there is such a rule then deadline tasks are screwed.
Juri?


>> + Finally, notice that in order not to jeopardize this admission control a
>> + -deadline task cannot fork.
>
> s/this/the
> (there aren't any other admission controls in the kernel)
Ok; this will go in my updated patch



			Thanks,
				Luca

  reply	other threads:[~2014-09-03  6:49 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-08-28 10:00 [PATCH v3 0/4] SCHED_DEADLINE documentation fixes and improvements Juri Lelli
2014-08-28 10:00 ` [PATCH v3 1/4] Documentation/scheduler/sched-deadline.txt: fix terminology and improve clarity Juri Lelli
2014-09-02 21:10   ` Henrik Austad
2014-09-03  6:43     ` Luca Abeni
     [not found]       ` <CAM6o_m19T7OV=4_5rh_m1XSZKQmpKD0TaSSkiOxthNLz7uJ8Gw@mail.gmail.com>
2014-09-03  8:27         ` Luca Abeni
2014-09-04  8:46     ` Juri Lelli
2014-08-28 10:00 ` [PATCH v3 2/4] Documentation/scheduler/sched-deadline.txt: Rewrite section 4 intro Juri Lelli
2014-09-02 21:14   ` Henrik Austad
2014-09-04  8:57     ` Juri Lelli
2014-08-28 10:00 ` [PATCH v3 3/4] Documentation/scheduler/sched-deadline.txt: improve and clarify AC bits Juri Lelli
2014-09-02 21:45   ` Henrik Austad
2014-09-03  6:49     ` Luca Abeni [this message]
     [not found]       ` <CAM6o_m3VXiJO3ED_Rb-_Kfaw7mFyw_s4W0quQ_hSbpxgA_foLA@mail.gmail.com>
2014-09-03  8:37         ` Luca Abeni
2014-09-03  9:18       ` Juri Lelli
2014-09-04  9:25         ` Juri Lelli
2014-08-28 10:00 ` [PATCH v3 4/4] Documentation/scheduler/sched-deadline.txt: add tests suite appendix Juri Lelli
2014-09-02 21:53   ` Henrik Austad
2014-09-04 10:15     ` Juri Lelli
2014-09-02 21:55 ` [PATCH v3 0/4] SCHED_DEADLINE documentation fixes and improvements Henrik Austad
2014-09-03  8:46   ` Ingo Molnar

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=5406BA02.20806@unitn.it \
    --to=luca.abeni@unitn.it \
    --cc=henrik@austad.us \
    --cc=juri.lelli@arm.com \
    --cc=juri.lelli@gmail.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@redhat.com \
    --cc=peterz@infradead.org \
    --cc=raistlin@linux.it \
    --cc=rdunlap@infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.