All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Paul E. McKenney" <paulmck@us.ibm.com>
To: Karim Yaghmour <karim@opersys.com>
Cc: Kristian Benoit <kbenoit@opersys.com>,
	linux-kernel@vger.kernel.org, bhuey@lnxw.com, andrea@suse.de,
	tglx@linutronix.de, mingo@elte.hu, pmarques@grupopie.com,
	bruce@andrew.cmu.edu, nickpiggin@yahoo.com.au, ak@muc.de,
	sdietrich@mvista.com, dwalker@mvista.com, hch@infradead.org,
	akpm@osdl.org, rpm@xenomai.org
Subject: Re: PREEMPT_RT vs I-PIPE: the numbers, part 2
Date: Wed, 22 Jun 2005 11:47:48 -0700	[thread overview]
Message-ID: <20050622184748.GF1296@us.ibm.com> (raw)
In-Reply-To: <42B9A6D6.4060109@opersys.com>

On Wed, Jun 22, 2005 at 01:58:46PM -0400, Karim Yaghmour wrote:
> 
> Paul E. McKenney wrote:
> > I have big hands, so 7us could indeed qualify as a "handful".
> 
> :)
> 
> > Any insights as to what leads to the larger maximum delay?  Some guesses
> > include worst-case cache-miss patterns and interrupt disabling that I
> > missed in my quick scan of the patch.
> 
> Beats me. Given that PREEMPT_RT and the I-pipe get to the same maximum
> by using two entirely different approaches, I'm guessing this has more
> to do with hardware-related contention than anything inside the patches
> themselves.

Quite possible, perhaps worst-case cache state.

> > If I understand your analysis correctly (hah!!!), your breakdown
> > of the maximum delay assumes that the maximum delays for the logger
> > and the target are correlated.  What causes this correlation?
> 
> No it doesn't. I'm just inferring the maximum and average using the
> data obtained in the ipipe-to-ipipe setup. In that specific case,
> I'm assuming that the interrupt latency on both systems for the
> same type of interrupt is identical (after all, these machines are
> physically identical, albeit one has 512MB or RAM and the other
> 256.)
> 
> There is no correlation. Just the assumption that what's actually
> being measured is twice the latency of the ipipe in that specific
> setup.
> 
> Given that the interrupt latency of preempt_rt is measured using one
> machine runing adeos (read ipipe) and the other preempt_rt, I'm
> deducing the latency of preempt_rt based on the numbers obtained
> for the ipipe by looking at the ipipe-to-ipipe setup.
> 
> > My (probably hopelessly naive) assumption would be that there would
> > be no such correlation.  In absence of correlation, one might
> > approximate the maximum ipipe delay by subtracting the -average-
> > ipipe delay from the maximum preemption delay, for 55us - 7us = 48us.
> > Is this the case, or am I missing something here?
> 
> Not directly. You'd have to start by saying that the true maximum ipipe
> delay is obtained by substracting the average ipipe delay from the
> measured maximum ipipe delay (to play safe you could even substract
> the minimum.)
> 
> However such a maximum isn't correlated by the data. If indeed there
> was a difference between the maximums, averages and minimums of the
> ipipe and preempt_rt, the shear quantity of measurements would not
> have shown such latency similarities. IOW, it is expected that at
> least once in a blue moon we'll hit that case where both the target
> and the logger demonstrate their highest possible latency. That's
> what we can safely assume 55us is, again given the number of samples.
> Remember that on the first run, we sometimes observed a maximum
> ipipe-to-ipipe response time of 21us. That's because in those runs
> the blue-moon scenario didn't materialize.

Quite possible, depending on what the raw distribution of times looks
like.  If there are a smallish number of 55us events (as there would
have to be given an average of 7us), the blue-moon scenario would lead
one to expect a much larger number of ~30us events (27.5us + 3.5us).

In absence of a ~30us bulge, there would still be the possibility that
one might see an even bluer (violet?) moon that might stack up to ~100us.
Heck, there might be that possibility anyway, but such is life when
measuring latencies.  :-/

(And, yes, there are other CDFs lacking a 30us bulge that would be
consistent with a 55us "blue-moon" bulge -- so I guess I am asking
if you have the CDF or the raw latency measurements -- though the
data set might be a bit large...  And I would have to think about
how one goes about deriving individual-latency CDF(s) given a single
dual-latency CDF, assuming that this is even possible...)

> > Of course, in the case of the -average- preemption measurements, dividing
> > by two to get the average ipipe delay makes perfect sense.
> 
> There's no correlation, so I don't see this one.

You are right that there might not be a correlation, and that it might
be OK to just divide the maximum latency by two, but I can imagine
cases where dividing by two was not appropriate.

> > Whatever the answer to my maximum-delay question, the same breakdown of
> > the raw latency figures would apply to the CONFIG_PREEMPT_RT case, right?
> 
> Sure, but again see the above caveats.

Thanks for the info!

							Thanx, Paul

  reply	other threads:[~2005-06-22 18:48 UTC|newest]

Thread overview: 61+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-06-20 17:13 PREEMPT_RT vs I-PIPE: the numbers, part 2 Kristian Benoit
2005-06-20 18:31 ` Bill Huey
2005-06-22 16:00   ` Karim Yaghmour
2005-06-22 19:29     ` Bill Huey
2005-06-22 20:05       ` Ingo Molnar
2005-06-22 20:39         ` Karim Yaghmour
2005-06-22 22:04           ` Ingo Molnar
2005-06-22 23:03             ` Lee Revell
2005-06-22 23:52               ` Karim Yaghmour
2005-06-22 23:38             ` Karim Yaghmour
2005-06-22 23:57               ` Andrea Arcangeli
2005-06-23  0:05               ` Daniel Walker
2005-06-23  0:48                 ` Karim Yaghmour
2005-06-23  0:06               ` Ingo Molnar
2005-06-23  0:47                 ` Karim Yaghmour
2005-06-23  0:55                   ` Bill Huey
2005-06-23  1:09                     ` Karim Yaghmour
2005-06-23  1:15                       ` Bill Huey
2005-06-23  1:47                         ` Karim Yaghmour
2005-06-23  0:59                   ` David Lang
2005-06-23  1:22                     ` Karim Yaghmour
2005-06-23  1:42                       ` David Lang
2005-06-23  2:09                         ` Karim Yaghmour
2005-06-23  2:15                           ` David Lang
2005-06-23  1:34                   ` Ingo Molnar
2005-06-23  2:02                     ` Karim Yaghmour
2005-06-23  3:57                       ` Lee Revell
2005-06-23  4:13                         ` Karim Yaghmour
2005-06-22 20:10       ` Karim Yaghmour
2005-06-22 20:15         ` Bill Huey
2005-06-21  1:55 ` Paul E. McKenney
2005-06-21  2:29   ` Karim Yaghmour
2005-06-22  1:19     ` Paul E. McKenney
2005-06-22 15:31       ` Karim Yaghmour
2005-06-22 15:27         ` Kristian Benoit
2005-06-22 16:27         ` Paul E. McKenney
2005-06-22 17:20           ` Kristian Benoit
2005-06-22 17:34             ` Ingo Molnar
2005-06-22 17:40               ` Ingo Molnar
2005-06-22 18:12                 ` Karim Yaghmour
2005-06-22 18:14                   ` Ingo Molnar
2005-06-22 19:04                     ` Karim Yaghmour
2005-06-22 18:50             ` Paul E. McKenney
2005-06-22 19:04               ` Ingo Molnar
2005-06-22 20:17                 ` Karim Yaghmour
2005-06-22 20:22                   ` Ingo Molnar
2005-06-22 21:03                     ` Karim Yaghmour
2005-06-22 21:10                       ` Ingo Molnar
2005-06-22 21:32                         ` Karim Yaghmour
2005-06-22 22:41                       ` Ingo Molnar
2005-06-22 23:02                         ` Karim Yaghmour
2005-06-22 21:20                 ` Paul E. McKenney
2005-06-22 19:08               ` Karim Yaghmour
2005-06-23 14:48             ` Paulo Marques
2005-06-22 17:58           ` Karim Yaghmour
2005-06-22 18:47             ` Paul E. McKenney [this message]
2005-06-22 19:16               ` Karim Yaghmour
2005-06-22 21:23                 ` Paul E. McKenney
2005-06-22 17:17         ` Lee Revell
2005-06-22 17:32           ` Karim Yaghmour
2005-06-29  7:43           ` PREEMPT_RT & threading IRQ 0 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=20050622184748.GF1296@us.ibm.com \
    --to=paulmck@us.ibm.com \
    --cc=ak@muc.de \
    --cc=akpm@osdl.org \
    --cc=andrea@suse.de \
    --cc=bhuey@lnxw.com \
    --cc=bruce@andrew.cmu.edu \
    --cc=dwalker@mvista.com \
    --cc=hch@infradead.org \
    --cc=karim@opersys.com \
    --cc=kbenoit@opersys.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=nickpiggin@yahoo.com.au \
    --cc=pmarques@grupopie.com \
    --cc=rpm@xenomai.org \
    --cc=sdietrich@mvista.com \
    --cc=tglx@linutronix.de \
    /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.