From: Ingo Molnar <mingo@elte.hu>
To: Esben Nielsen <simlo@phys.au.dk>
Cc: linux-kernel@vger.kernel.org
Subject: Re: Priority Inheritance Test (Real-Time Preemption)
Date: Mon, 29 Nov 2004 10:59:41 +0100 [thread overview]
Message-ID: <20041129095941.GD7868@elte.hu> (raw)
In-Reply-To: <Pine.OSF.4.05.10411281630010.23754-100000@da410.ifa.au.dk>
* Esben Nielsen <simlo@phys.au.dk> wrote:
> I agree with your analysis: There is no need to change the way the
> mutex is passed to the new task as the current implementation does
> give an upper bound. Also it works the same way on SMP and UP. It also
> performs better. The situations where the bound really is 2^N-1, N>2,
> are very rare if they exist at all.
>
> There is a tiny "however" I want to mention, though. Who will use a
> Linux kernel with real-time performance? People who want a RT
> application and at the same time want to deploy normal Linux
> applications. The criteria for the RT system to work is that even if
> you put on heavy loads of normal applications the RT application still
> schedules fine. It is very unlikely that anyone will try to calculate
> wether it schedules or not. It is much more common that people just
> test it in the lab and then thrust that the real-time properties of
> the the system not to change when you go into deployment.
the locking interactions have to be well understood. You really have to
know whether the RT app takes lock1 once or 10 times in a critical path
- in the latter case people might never see the 10x2msec latency in
testing either, so i dont think there's a big difference. I.e. depending
on what kernel subsystems the RT task uses (what kernel subsystems it
uses that shares locks with nonprivileged tasks), it might see higher
latencies.
To give you an extreme example: you cannot run OpenOffice.org with
SCHED_FIFO prio 99 and expect it to have any sane deterministic latency
bounds. The simpler the app, the easier it is to control latencies.
Careful planning and design of hard-RT apps is still vital, and further
RT-friendly locking of kernel subsystems has to be done too. Also, the
actual latencies and characteristics of kernel subsystems has to be
understood too. So e.g.: "if your hard-RT task uses file ops then you
might see latencies up to ... N*open_files" - things like that.
PREEMPT_RT doesnt magically give all kernel subsystems bounded execution
times - it only guarantees bounded scheduling latencies. So it in
essence integrates hard-RT into Linux, but it doesnt by itself make the
kernel itself O(1). But, fortunately, a good portion of the core
functionality of Linux is quite close to O(1) already, and most hard-RT
apps try to stay as simple as possible. But no doubt there's still tons
of work left - PREEMPT_RT is only the core infrastructure.
Ingo
next prev parent reply other threads:[~2004-11-29 10:00 UTC|newest]
Thread overview: 43+ messages / expand[flat|nested] mbox.gz Atom feed top
2004-11-21 20:29 Priority Inheritance Test (Real-Time Preemption) Esben Nielsen
2004-11-22 0:27 ` Ingo Molnar
2004-11-23 13:34 ` Ingo Molnar
2004-11-23 15:47 ` Esben Nielsen
2004-11-23 23:03 ` Esben Nielsen
2004-11-24 3:42 ` Ingo Molnar
2004-11-24 7:51 ` Ingo Molnar
2004-11-24 8:07 ` Ingo Molnar
2004-11-24 8:33 ` Esben Nielsen
2004-11-24 9:55 ` Ingo Molnar
2004-11-24 10:18 ` Ingo Molnar
2004-11-25 15:46 ` Esben Nielsen
2004-11-25 16:58 ` Ingo Molnar
2004-11-25 16:08 ` Esben Nielsen
2004-11-25 17:14 ` Ingo Molnar
2004-11-25 22:08 ` Esben Nielsen
2004-11-26 1:08 ` Ingo Molnar
2004-11-26 0:34 ` Ingo Molnar
2004-11-26 0:37 ` Ingo Molnar
2004-11-26 8:52 ` Esben Nielsen
2004-11-26 16:26 ` Esben Nielsen
2004-11-26 20:41 ` Ingo Molnar
2004-11-26 21:05 ` Ingo Molnar
2004-11-27 23:05 ` Esben Nielsen
2004-11-28 8:42 ` Ingo Molnar
2004-11-28 15:55 ` Esben Nielsen
2004-11-29 9:59 ` Ingo Molnar [this message]
2004-11-29 15:07 ` Esben Nielsen
2004-11-29 15:56 ` Ingo Molnar
2004-11-29 15:57 ` Ingo Molnar
2004-11-29 16:50 ` Esben Nielsen
2004-11-30 8:49 ` Ingo Molnar
2004-11-22 9:23 ` Bill Huey
2004-11-22 12:37 ` Ingo Molnar
2004-11-22 21:25 ` Bill Huey
2004-11-22 14:16 ` john cooper
2004-11-22 15:24 ` Ingo Molnar
2004-11-23 1:19 ` john cooper
2004-11-23 8:13 ` Esben Nielsen
2004-11-23 9:21 ` Ingo Molnar
2004-11-22 21:30 ` Bill Huey
2004-11-23 1:34 ` john cooper
2004-11-22 16:12 ` Esben Nielsen
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=20041129095941.GD7868@elte.hu \
--to=mingo@elte.hu \
--cc=linux-kernel@vger.kernel.org \
--cc=simlo@phys.au.dk \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox