All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ingo Molnar <mingo@elte.hu>
To: Con Kolivas <kernel@kolivas.org>
Cc: ck@vds.kolivas.org, Serge Belyshev <belyshev@depni.sinp.msu.ru>,
	Al Boldi <a1426z@gawab.com>, Mike Galbraith <efault@gmx.de>,
	linux-kernel@vger.kernel.org, Nicholas Miell <nmiell@comcast.net>,
	Linus Torvalds <torvalds@linux-foundation.org>,
	Andrew Morton <akpm@linux-foundation.org>
Subject: Re: is RSDL an "unfair" scheduler too?
Date: Sat, 17 Mar 2007 12:49:03 +0100	[thread overview]
Message-ID: <20070317114903.GA20673@elte.hu> (raw)
In-Reply-To: <200703172048.46267.kernel@kolivas.org>


* Con Kolivas <kernel@kolivas.org> wrote:

> Despite the claims to the contrary, RSDL does not have _less_ 
> heuristics, it does not have _any_. It's purely entitlement based.

RSDL still has heuristics very much, but this time it's hardcoded into 
the design! Let me demonstrate this via a simple experiment.

in the vanilla scheduler, the heuristics are ontop of a fairly basic 
(and fast) scheduler, they are plain visible and thus 'optional'. In 
RSDL, the heuristics are still present but more hidden and more 
engrained into the design.

But it's easy to demonstrate this under RSDL: consider the following two 
scenarios, which implement precisely the same fundamental computing 
workload (everything running on the same, default nice 0 level):

1) a single task runs almost all the time and sleeps about 1 msec every
   100 msecs.

   [ run "while N=1; do N=1; done &" under bash to create such a 
     workload. ]

2) tasks are in a 'ring' where each runs for 100 msec, sleeps for 1
   msec and passes the 'token' around to the next task in the ring. (in
   essence every task will sleep 9900 msecs before getting another run)

   [ run http://redhat.com/~mingo/scheduler-patches/ring-test.c to
     create this workload. If the 100 tasks default is too much for you 
     then you can run "./ring-test 10" - that will show similar effects. 
   ]

Workload #1 uses 100% of CPU time. Workload #2 uses 99% of CPU time. 
They both do in essence the same thing.

if RSDL had no heuristics at all then if i mixed #1 with #2, both 
workloads would get roughly 50%/50% of the CPU, right? (as happens if i 
mix #1 with #1 - both CPU-intense workloads get half of the CPU)

in reality, in the 'ring workload' case, RSDL will only give about _5%_ 
of CPU time to the #1 CPU-intense task, and will give 95% of CPU time to 
the #2 'ring' of tasks. So the distribution of timeslices is 
significantly unfair!

Why? Because RSDL still has heuristics, just elsewhere and more hidden: 
in the "straightforward CPU intense task" case RSDL will 'penalize' the 
task by depleting its quota for running nearly all the time, in the 
"ring of tasks" case the 100 tasks will each run near their priority 
maximum, fed by 'major epoch' events of RSDL, thus they get 'rewarded' 
for seemingly sleeping alot and spreading things out. So RSDL has 
fundamental unfairness built in as well - it's just different from the 
vanilla scheduler.

	Ingo

  parent reply	other threads:[~2007-03-17 11:49 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
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                                                           ` Ingo Molnar [this message]
2007-03-17 12:02                                                             ` is RSDL an "unfair" scheduler too? 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=20070317114903.GA20673@elte.hu \
    --to=mingo@elte.hu \
    --cc=a1426z@gawab.com \
    --cc=akpm@linux-foundation.org \
    --cc=belyshev@depni.sinp.msu.ru \
    --cc=ck@vds.kolivas.org \
    --cc=efault@gmx.de \
    --cc=kernel@kolivas.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nmiell@comcast.net \
    --cc=torvalds@linux-foundation.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 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.