linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Mike Galbraith <efault@gmx.de>
To: Con Kolivas <kernel@kolivas.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>, Willy Tarreau <w@1wt.eu>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Xavier Bestel <xavier.bestel@free.fr>, Mark Lord <lkml@rtr.ca>,
	Al Boldi <a1426z@gawab.com>,
	ck@vds.kolivas.org, Serge Belyshev <belyshev@depni.sinp.msu.ru>,
	Ingo Molnar <mingo@elte.hu>,
	linux-kernel@vger.kernel.org, Nicholas Miell <nmiell@comcast.net>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: RSDL v0.31
Date: Fri, 23 Mar 2007 05:39:54 +0100	[thread overview]
Message-ID: <1174624794.6554.64.camel@Homer.simpson.net> (raw)
In-Reply-To: <200703230950.51716.kernel@kolivas.org>

On Fri, 2007-03-23 at 09:50 +1100, Con Kolivas wrote:

> Now to figure out some meaningful cheap way of improving this accounting.

The accounting is easy iff tick resolution is good enough, the deadline
mechanism is harder.  I did the "quota follows task" thing, but nothing
good happens.  That just ensured that the deadline mechanism kicks in
constantly because tick theft is a fact of tick-based life.  A
reasonable fudge factor would help, but...

I see problems wrt with trying to implement the deadline mechanism.

As implemented, it can't identify who is doing the stealing (which
happens constantly, even if userland if 100% hog) because of tick
resolution accounting.  If you can't identify the culprit, you can't
enforce the quota, and quotas which are not enforced are, strictly
speaking, not quotas.  At tick time, you can only close the barn door
after the cow has been stolen, and the thief can theoretically visit
your barn an infinite number of times while you aren't watching the
door.  ("don't blink" scenarios, and tick is backward-assward blink)

You can count nanoseconds in schedule, and store the actual usage, but
then you still have the problem of inaccuracies in sched_clock() from
cross-cpu wakeup and migration.  Cross-cpu wakeups happen quite a lot.
If sched_clock() _were_ absolutely accurate, you wouldn't need the
runqueue deadline mechanism, because at slice tick time you can see
everything you will ever see without moving enforcement directly into
the most critical of paths.

IMHO, unless it can be demonstrated that timeslice theft is a problem
with a real-life scenario, you'd be better off dropping the queue
ticking.  Time slices are a deadline mechanism, and in practice the god
of randomness ensures that even fast movers do get caught often enough
to make ticking tasks sufficient.

(that was a very long-winded reply to one sentence because I spent a lot
of time looking into this very subject and came to the conclusion that
you can't get there from here.  fwiw, ymmv and all that of course;)

> Thanks again!

You're welcome.

	-Mike


  reply	other threads:[~2007-03-23  4:40 UTC|newest]

Thread overview: 197+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-03-04 20:35 [ANNOUNCE] RSDL completely fair starvation free interactive cpu scheduler Al Boldi
2007-03-04 21:49 ` Con Kolivas
     [not found]   ` <45EB45F7.3050208@simon.arlott.org.uk>
2007-03-04 22:27     ` Con Kolivas
2007-03-05 18:29       ` Simon Arlott
2007-03-05 21:36         ` Con Kolivas
2007-03-04 23:13   ` Willy Tarreau
2007-03-04 23:58     ` Con Kolivas
2007-03-05  0:10     ` [ck] " jos poortvliet
2007-03-05  1:09     ` Gene Heskett
     [not found] ` <200703050834.45712.a1426z@gawab.com>
     [not found]   ` <20070305060732.GQ30401@nysv.org>
2007-03-05 11:59     ` [ck] " Al Boldi
2007-03-05 12:29       ` Con Kolivas
     [not found]         ` <200703052123.01095.a1426z@gawab.com>
2007-03-05 22:10           ` Con Kolivas
2007-03-06  8:42             ` Xavier Bestel
2007-03-06 15:15               ` Al Boldi
2007-03-11 18:11                 ` Al Boldi
2007-03-11 21:52                   ` Con Kolivas
2007-03-11 22:12                     ` Con Kolivas
2007-03-12  4:42                       ` Al Boldi
2007-03-12  4:53                         ` Con Kolivas
2007-03-12 11:26                           ` Al Boldi
2007-03-12 12:52                             ` Con Kolivas
2007-03-12 14:14                               ` Al Boldi
2007-03-12 14:58                                 ` [ck] " jos poortvliet
2007-03-12 16:37                                   ` michael chang
2007-03-12 17:41                                   ` Al Boldi
2007-03-12 18:05                                 ` Con Kolivas
2007-03-12 18:47                                   ` [ck] " jos poortvliet
2007-03-12 18:58                                     ` Antonio Vargas
2007-03-19 10:47                                       ` Helge Hafting
2007-03-18  1:30                               ` Bill Davidsen
2007-03-18 10:50                               ` [ck] " jos poortvliet
2007-03-13 15:31                             ` [PATCH] [RSDL-0.30] sched: rsdl improve latencies with differential nice Con Kolivas
2007-03-13 16:03                               ` [PATCH] [RSDL-0.30] sched: rsdl improve latencies with differential nice -1 Con Kolivas
2007-03-13 16:08                                 ` Con Kolivas
2007-03-13 20:58                                 ` Con Kolivas
2007-03-13 23:08                                   ` RSDL development plans Con Kolivas
2007-03-16 12:25                                     ` Con Kolivas
2007-03-16 13:40                                       ` RSDL v0.31 Con Kolivas
2007-03-16 15:34                                         ` Mike Galbraith
2007-03-16 21:13                                           ` Con Kolivas
2007-03-16 22:30                                             ` Mike Galbraith
2007-03-16 23:05                                               ` [ck] " Dirk Schoebel
2007-03-17  4:24                                               ` Nicholas Miell
2007-03-17  5:56                                                 ` Mike Galbraith
2007-03-17  6:08                                                   ` Mike Galbraith
2007-03-17 13:56                                                     ` Ed Tomlinson
2007-03-18 19:37                                                     ` Lee Revell
2007-03-18 19:55                                                       ` Mike Galbraith
2007-03-18 22:45                                                       ` Szonyi Calin
2007-03-19  2:27                                                     ` David Schwartz
2007-03-19  6:21                                                       ` Mike Galbraith
2007-03-19  6:59                                                         ` Willy Tarreau
2007-03-17  6:26                                                   ` Nicholas Miell
2007-03-17  7:11                                                     ` Mike Galbraith
2007-03-17  7:25                                                       ` William Lee Irwin III
2007-03-17  7:29                                                         ` Nicholas Miell
2007-03-17 11:48                                                       ` Gene Heskett
2007-03-17  7:45                                                     ` Ingo Molnar
2007-03-17  7:44                                                       ` David Lang
2007-03-17  8:46                                                         ` Mike Galbraith
2007-03-17 14:09                                                           ` [ck] " Mark Glines
2007-03-17 14:33                                                             ` Mike Galbraith
2007-03-17 14:54                                                               ` Mark Glines
2007-03-17 14:58                                                                 ` Mike Galbraith
2007-03-17  8:23                                                       ` Nicholas Miell
2007-03-17  9:42                                                         ` [patch] CFS scheduler: Completely Fair Scheduler / CONFIG_SCHED_FAIR Ingo Molnar
2007-03-17  8:41                                                       ` RSDL v0.31 Serge Belyshev
2007-03-17  9:48                                                         ` Con Kolivas
2007-03-17  9:58                                                           ` Mike Galbraith
2007-03-17 10:49                                                             ` Mike Galbraith
2007-03-17 12:05                                                               ` Gene Heskett
2007-03-17 13:36                                                                 ` Mike Galbraith
2007-03-17 17:03                                                                   ` Gene Heskett
2007-03-17 17:37                                                                     ` Mike Galbraith
2007-03-17 18:23                                                                       ` [ck] " Kacper Wysocki
2007-03-17 18:45                                                                         ` Mike Galbraith
2007-03-17 13:58                                                             ` michael chang
2007-03-17 20:55                                                             ` Al Boldi
2007-03-18  6:17                                                               ` Mike Galbraith
2007-03-18  6:47                                                                 ` Kasper Sandberg
2007-03-18  7:08                                                                   ` Mike Galbraith
2007-03-18  7:22                                                                     ` [ck] " Radoslaw Szkodzinski
2007-03-18  7:38                                                                       ` Mike Galbraith
2007-03-18  8:04                                                                         ` Mike Galbraith
2007-03-18  8:20                                                                         ` jimmy bahuleyan
2007-03-18  8:34                                                                           ` Mike Galbraith
2007-03-18  9:57                                                                         ` Kasper Sandberg
2007-03-18 13:57                                                                           ` Avuton Olrich
2007-03-19 20:47                                                                           ` Bill Davidsen
2007-03-20 10:19                                                                             ` jos poortvliet
2007-03-21  8:58                                                                             ` Kasper Sandberg
2007-03-18 15:44                                                                         ` Radoslaw Szkodzinski
2007-03-18 16:09                                                                           ` jos poortvliet
2007-03-19 16:07                                                               ` Mark Lord
2007-03-19 16:26                                                                 ` Xavier Bestel
2007-03-19 16:36                                                                   ` Mark Lord
2007-03-19 16:43                                                                     ` Xavier Bestel
2007-03-20  3:11                                                                       ` Linus Torvalds
2007-03-20  6:11                                                                         ` Willy Tarreau
2007-03-20  8:03                                                                           ` Mike Galbraith
2007-03-21 14:57                                                                             ` Mike Galbraith
2007-03-21 16:02                                                                               ` Peter Zijlstra
2007-03-21 17:06                                                                                 ` Mike Galbraith
2007-03-22  7:07                                                                                 ` Mike Galbraith
2007-03-22  9:18                                                                                   ` Ingo Molnar
2007-03-22  9:34                                                                                     ` Mike Galbraith
2007-03-22  9:41                                                                                       ` Mike Galbraith
2007-03-22 22:03                                                                                     ` Con Kolivas
2007-03-22 22:50                                                                                   ` Con Kolivas
2007-03-23  4:39                                                                                     ` Mike Galbraith [this message]
2007-03-23  5:59                                                                                       ` Con Kolivas
2007-03-23  6:11                                                                                         ` Mike Galbraith
2007-03-23 12:17                                                                                         ` Mike Galbraith
     [not found]                                                                               ` <20070321161147.54c7a727@localhost>
2007-03-21 17:07                                                                                 ` Mike Galbraith
2007-03-22  4:49                                                                                   ` Willy Tarreau
2007-03-22  7:14                                                                                     ` Mike Galbraith
2007-03-20  9:03                                                                           ` Xavier Bestel
2007-03-20 12:31                                                                             ` Artur Skawina
2007-03-20 19:16                                                                               ` Artur Skawina
2007-03-21  7:50                                                                             ` Ingo Molnar
2007-03-21 10:43                                                                               ` David Schwartz
2007-03-28 23:37                                                                                 ` Bill Davidsen
2007-03-29  7:10                                                                                   ` David Schwartz
2007-03-29  7:34                                                                                     ` Nick Piggin
2007-03-20 15:31                                                                           ` Linus Torvalds
2007-03-20 18:08                                                                             ` Al Boldi
2007-03-21  8:22                                                                             ` Keith Duthie
2007-03-28 23:43                                                                             ` Bill Davidsen
2007-03-20 10:26                                                                         ` [ck] " jos poortvliet
2007-03-20 13:22                                                                         ` Mark Lord
2007-03-20 15:16                                                                           ` Ray Lee
2007-03-20 15:20                                                                             ` Mark Lord
2007-03-21  8:55                                                                             ` Kasper Sandberg
2007-03-19 20:53                                                                 ` Al Boldi
2007-03-20 19:50                                                                   ` Artur Skawina
2007-03-21  4:15                                                                     ` Al Boldi
2007-03-21 17:24                                                                       ` Artur Skawina
2007-03-19 16:03                                                             ` Mark Lord
2007-03-17 11:49                                                           ` is RSDL an "unfair" scheduler too? Ingo Molnar
2007-03-17 12:02                                                             ` Con Kolivas
2007-03-17 12:23                                                               ` [ck] " jos poortvliet
2007-03-17 17:31                                                                 ` David Schwartz
2007-03-17 12:28                                                               ` Ingo Molnar
2007-03-17 12:43                                                                 ` Con Kolivas
2007-03-17 16:34                                                                   ` Ingo Molnar
2007-03-18  3:23                                                                     ` Bill Davidsen
2007-03-18  2:13                                                                   ` Bill Davidsen
2007-03-18  3:20                                                                     ` Kasper Sandberg
2007-03-18  5:37                                                                     ` Mike Galbraith
2007-03-18 10:58                                                                       ` [ck] " jos poortvliet
2007-03-17 12:15                                                             ` jos poortvliet
2007-03-17 20:41                                                             ` Avi Kivity
2007-03-18  1:25                                                               ` William Lee Irwin III
2007-03-18  1:32                                                                 ` Linus Torvalds
2007-03-18  5:24                                                                   ` Willy Tarreau
2007-03-18  5:55                                                                     ` Avi Kivity
2007-03-19  2:27                                                                       ` David Schwartz
2007-03-19 13:27                                                                         ` Radoslaw Szkodzinski
2007-03-19 18:30                                                                           ` David Lang
2007-03-19 15:25                                                                         ` Avi Kivity
2007-03-19 16:06                                                                           ` Helge Hafting
2007-03-19 16:37                                                                             ` Avi Kivity
2007-03-18  6:09                                                                     ` Bill Huey
2007-03-18  6:37                                                                       ` Mike Galbraith
2007-03-18  7:35                                                                         ` Bill Huey
2007-03-19 21:14                                                                       ` Bill Davidsen
2007-03-18  6:26                                                                     ` Mike Galbraith
2007-03-18  6:54                                                                       ` [ck] " Radoslaw Szkodzinski
2007-03-18  7:58                                                                         ` Willy Tarreau
2007-03-18  8:45                                                                           ` Avi Kivity
2007-03-18  5:00                                                                 ` Avi Kivity
2007-03-17 15:13                                                           ` RSDL v0.31 Mark Hahn
2007-03-17 17:22                                                             ` Stephen Clark
2007-03-19 15:06                                                             ` Chris Friesen
2007-03-17  7:56                                                     ` Ingo Molnar
2007-03-17 11:07                                                       ` [ck] " jos poortvliet
2007-03-17 12:44                                                         ` Ingo Molnar
2007-03-17 13:44                                                           ` jos poortvliet
2007-03-17 14:04                                                         ` [ck] " Ed Tomlinson
2007-03-17 14:32                                               ` Rik van Riel
2007-03-17 14:43                                                 ` Mike Galbraith
2007-03-17 15:39                                                 ` Ingo Molnar
2007-03-16 17:12                                         ` AshMilsted
2007-03-16 17:41                                           ` Gabriel C
2007-03-16 21:55                                         ` Al Boldi
2007-03-17  2:51                                           ` Con Kolivas
2007-03-17  4:40                                             ` Al Boldi
2007-03-17  4:57                                               ` Con Kolivas
2007-03-17  5:15                                                 ` Gene Heskett
2007-03-17 13:50                                                 ` Ed Tomlinson
2007-03-17 16:12                                                 ` Al Boldi
2007-03-16 13:42                                       ` RSDL development plans Mike Galbraith
2007-03-16 13:59                                         ` Con Kolivas
2007-03-16 14:07                                           ` Mike Galbraith
2007-03-14  9:13                               ` [PATCH] [RSDL-0.30] sched: rsdl improve latencies with differential nice Mike Galbraith
2007-03-14  9:25                                 ` Con Kolivas
2007-03-14  9:42                                   ` Mike Galbraith

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=1174624794.6554.64.camel@Homer.simpson.net \
    --to=efault@gmx.de \
    --cc=a.p.zijlstra@chello.nl \
    --cc=a1426z@gawab.com \
    --cc=akpm@linux-foundation.org \
    --cc=belyshev@depni.sinp.msu.ru \
    --cc=ck@vds.kolivas.org \
    --cc=kernel@kolivas.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lkml@rtr.ca \
    --cc=mingo@elte.hu \
    --cc=nmiell@comcast.net \
    --cc=torvalds@linux-foundation.org \
    --cc=w@1wt.eu \
    --cc=xavier.bestel@free.fr \
    /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;
as well as URLs for NNTP newsgroup(s).