From: Vernon Mauery <vernux@us.ibm.com>
To: Steven Rostedt <rostedt@goodmis.org>
Cc: Bill Huey <billh@gnuppy.monkey.org>,
Darren Hart <dvhltc@us.ibm.com>, Ingo Molnar <mingo@elte.hu>,
linux-kernel@vger.kernel.org,
Thomas Gleixner <tglx@linutronix.de>,
"Stultz, John" <johnstul@us.ibm.com>,
Peter Williams <pwil3058@bigpond.net.au>,
"Siddha, Suresh B" <suresh.b.siddha@intel.com>,
Nick Piggin <nickpiggin@yahoo.com.au>
Subject: Re: RT task scheduling
Date: Fri, 7 Apr 2006 21:28:35 -0700 [thread overview]
Message-ID: <200604072128.36868.vernux@us.ibm.com> (raw)
In-Reply-To: <1144465282.30689.62.camel@localhost.localdomain>
On Friday 07 April 2006 20:01, Steven Rostedt wrote:
> Hi Bill,
>
> I'm just catching up on this thread. Is your main concern that a High
> prio task is going to be unnecessary delayed because there's a lower RT
> task on the same CPU and time is needed to push it off to another CPU?
> It's late, so forgive me if this is a stupid question ;)
What I have gathered from this thread is that there are two important (and
partially conflicting) requirements for better real-time support.
1) Deterministic scheduling algorithms (SWSRPS). Basically, with uniprocessor
systems (or smp with a global run queue), it was really easy to say, run the
highest priority task in the queue. But when there are several queues that
are independent of each other, it is difficult. According to SWSRPS, nr_cpus
highest priority runnable tasks should _always_ be running (regardless of
which queue they are on). This might mean that there are longer latencies a)
to determine the nr_cpus highest priority tasks and b) because of cache
issues.
2) Maximum deterministic latency. A task should be able to say that if it
relinquishes the processor for now, MAX_LATENCY nanoseconds (or ticks or
whatever you want to measure time in) later, it will be back in time to meet
a deadline.
As I understand it, real time is all about determinism. But there are several
places where we have to focus on determinism to make it all behave as it
should.
Priority A > B > C
If a lower priority task C gets run just because it is the highest in that
CPU's run queue while there is a higher priority task B is sleeping while A
runs (on a 2 proc system), this is WRONG. But then again, we need to make
sure that we can determine the maximum latency to preempt C to run B and try
to minimize that.
Poof! More smoke in the air. I hope that clears it up.
--Vernon
> On Fri, 2006-04-07 at 16:36 -0700, Bill Huey wrote:
> > > Has this cleared some things up? If not, let me know what else needs
> > > clarification.
> >
> > Yes, but you should really work to clarify terminology. Is this better ?
>
> Goes both ways :)
>
> -- Steve
>
> PS. It's really good to see you back on LKML. I've missed your posts.
>
>
> -
> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
> Please read the FAQ at http://www.tux.org/lkml/
next prev parent reply other threads:[~2006-04-08 4:26 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-04-06 3:25 RT task scheduling Darren Hart
2006-04-06 4:19 ` Peter Williams
2006-04-06 17:24 ` Darren Hart
2006-04-06 23:02 ` Peter Williams
2006-04-06 7:37 ` Ingo Molnar
2006-04-06 14:55 ` Darren Hart
2006-04-06 18:16 ` Darren Hart
2006-04-06 22:35 ` Darren Hart
2006-04-07 22:58 ` Vernon Mauery
2006-04-06 23:06 ` Peter Williams
2006-04-07 3:07 ` Bill Huey
2006-04-07 7:11 ` Ingo Molnar
2006-04-07 8:39 ` Bill Huey
2006-04-07 9:11 ` Bill Huey
2006-04-07 9:19 ` Ingo Molnar
2006-04-07 10:39 ` Bill Huey
2006-04-07 10:51 ` Ingo Molnar
2006-04-07 11:14 ` Bill Huey
2006-04-07 11:29 ` Ingo Molnar
2006-04-07 22:18 ` Bill Huey
2006-04-07 14:56 ` Darren Hart
2006-04-07 21:06 ` Bill Huey
2006-04-07 22:37 ` Darren Hart
2006-04-07 23:36 ` Bill Huey
2006-04-08 3:01 ` Steven Rostedt
2006-04-08 4:28 ` Vernon Mauery [this message]
2006-04-08 4:45 ` Steven Rostedt
2006-04-08 7:16 ` Ingo Molnar
2006-04-08 7:25 ` Ingo Molnar
2006-04-08 7:54 ` Bill Huey
2006-04-08 8:03 ` Ingo Molnar
2006-04-08 10:02 ` Bill Huey
2006-04-08 0:11 ` Peter Williams
2006-04-07 9:23 ` Bill Huey
2006-04-09 13:16 ` Ingo Molnar
2006-04-09 17:25 ` Darren Hart
2006-04-09 18:31 ` 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=200604072128.36868.vernux@us.ibm.com \
--to=vernux@us.ibm.com \
--cc=billh@gnuppy.monkey.org \
--cc=dvhltc@us.ibm.com \
--cc=johnstul@us.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=nickpiggin@yahoo.com.au \
--cc=pwil3058@bigpond.net.au \
--cc=rostedt@goodmis.org \
--cc=suresh.b.siddha@intel.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