public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Karim Yaghmour <karim@opersys.com>
To: paulmck@us.ibm.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 13:58:46 -0400	[thread overview]
Message-ID: <42B9A6D6.4060109@opersys.com> (raw)
In-Reply-To: <20050622162718.GD1296@us.ibm.com>


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.

> 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.

> 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.

> 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.

Karim
-- 
Author, Speaker, Developer, Consultant
Pushing Embedded and Real-Time Linux Systems Beyond the Limits
http://www.opersys.com || karim@opersys.com || 1-866-677-4546

  parent reply	other threads:[~2005-06-22 17:55 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 [this message]
2005-06-22 18:47             ` Paul E. McKenney
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=42B9A6D6.4060109@opersys.com \
    --to=karim@opersys.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=kbenoit@opersys.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=nickpiggin@yahoo.com.au \
    --cc=paulmck@us.ibm.com \
    --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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox