From: Thomas Gleixner <tglx@linutronix.de>
To: Christoph Lameter <cl@linux.com>
Cc: ksummit-discuss@lists.linuxfoundation.org
Subject: Re: [Ksummit-discuss] [TECH TOPIC] Mainlining PREEMPT_RT
Date: Wed, 14 Oct 2015 22:24:45 +0200 (CEST) [thread overview]
Message-ID: <alpine.DEB.2.11.1510142203350.3960@nanos> (raw)
In-Reply-To: <alpine.DEB.2.20.1510141345540.13663@east.gentwo.org>
Christoph,
On Wed, 14 Oct 2015, Christoph Lameter wrote:
> On Wed, 14 Oct 2015, Steven Rostedt wrote:
>
> > If PREEMPT_RT is not the way to go, then why did several companies just
> > invest into getting it mainlined?
>
> I guess they want "realtime" support. Better talk to them what they mean
> by realtime. I have never seen a real use case for PREEMPT_RT. Instead a
> lot of high level "realtime" talk and disappointment when they found out
> what the real constraints and limitations are.
Just because you did not see any real use does not mean, there is no
real use. There are whole application classes out there, which use it
today. Look at the OSADL member roaster and figure out what those
companies are doing.
> You could put the processing for the stuff that creates outliers on a
> different cpu? Layout the processing in such a way to guarantee no
> outliers on the "realtime" processors?
Sure, you just add another server to it and be done. That's not what
people in the embedded space can do.
They need to run highly multi threaded applications on a small system
and still need the guarantee that they meet their dead lines. They
cannot afford the waste of a CPU busy spinning in order to process the
next event. Neither they have the number of cores which would be
needed nor they can afford the energy wasted by it.
> Realtime is about guarantees of a response in a certain time period. That
> is why "soft realtime" is not making much sense. There is no guarantee
> anymore. Just more overhead. OS processing slows down due to the
> sprinkling of preempt code but the timing guarantees that one seeks can be
> violated. Increasing the processing overhead may increase the number of
> failures to process a given task in a time period that one wants
> guaranteed. So better run without preempt in order to have a higher chance
> to finish in time? That is at least what my industry has decided to do.
Your industry is a total different application space. Please stop to
project your narrow view of the application space onto everybody.
And your interpretation of real time is just silly.
The key of an RTOS is the deterministic guarantee for the time it
takes to enqueue a given task up to the completion of the task. The
design goal is not high throughput. The design goal is to achieve
latency guarantees. An RTOS sacrifices performance and throughput to
achieve that guarantees.
Once again: The definition of Real-Time is determinism, not speed.
> But we really wish we had a hard realtime capability if we must respond in
> a certain time period. Sadly there is no solution in sight right now.
You're design goal is completely different. Your design goal is
sacrifying a single CPU in order to have FAST response on an event and
high throughput at the same time. That has nothing to do with real
time. Go and read on OS theory to figure out why.
I'm really tired of your obnoxious claims, that the only way of doing
RT is what you think it might be.
I'm well aware that your use case exists. It was one of the reasons
why I started the NOHZ FULL effort in the first place. Please, fix
your NOHZ FULL isolation problem and stop imposing your completely
domain specific blinkerdness on everybody else.
Thanks,
tglx
next prev parent reply other threads:[~2015-10-14 20:25 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-13 16:42 Steven Rostedt
2015-10-13 17:33 ` Josh Triplett
2015-10-13 22:40 ` Rafael J. Wysocki
2015-10-13 22:19 ` Luis R. Rodriguez
2015-10-13 22:39 ` Steven Rostedt
2015-10-13 22:48 ` Luis R. Rodriguez
2015-10-13 23:04 ` Rafael J. Wysocki
2015-10-13 22:41 ` Luis R. Rodriguez
2015-10-14 7:35 ` Linus Walleij
2015-10-14 11:45 ` Christoph Lameter
2015-10-14 13:20 ` Steven Rostedt
2015-10-14 14:49 ` Christoph Lameter
2015-10-14 15:22 ` Steven Rostedt
2015-10-14 18:12 ` Christoph Lameter
2015-10-14 18:32 ` Steven Rostedt
2015-10-14 18:56 ` Christoph Lameter
2015-10-14 19:17 ` James Bottomley
2015-10-14 19:30 ` Tim Bird
2015-10-15 2:20 ` Steven Rostedt
2015-10-15 9:05 ` Thomas Gleixner
2015-10-14 20:24 ` Thomas Gleixner [this message]
2015-10-15 14:22 ` Christoph Lameter
2015-10-15 15:13 ` Steven Rostedt
2015-10-15 17:21 ` Jan Kara
2015-10-15 18:09 ` Steven Rostedt
2015-10-15 20:21 ` Thomas Gleixner
2015-10-15 20:37 ` Thomas Gleixner
2016-08-05 22:32 ` Darren Hart
2016-08-05 22:40 ` Darren Hart
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=alpine.DEB.2.11.1510142203350.3960@nanos \
--to=tglx@linutronix.de \
--cc=cl@linux.com \
--cc=ksummit-discuss@lists.linuxfoundation.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox