public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Nick Piggin <piggin@cyberone.com.au>
To: Eric St-Laurent <ericstl34@sympatico.ca>
Cc: linux-kernel@vger.kernel.org
Subject: Re: scheduler interactivity: timeslice calculation seem wrong
Date: Tue, 19 Aug 2003 13:06:49 +1000	[thread overview]
Message-ID: <3F419449.4070104@cyberone.com.au> (raw)
In-Reply-To: <1061261666.2094.15.camel@orbiter>



Eric St-Laurent wrote:

>currently, nicer tasks (nice value toward -20) get larger timeslices,
>and less nice tasks (nice value toward 19) get small timeslices.
>

Funny, isn't it!

>
>this is contrary to all process scheduling theory i've read, and also
>contrary to my intuition.
>

Yep.

>
>maybe it was done this way for fairness reasons, but that's another
>story...
>
>high priority (interactive) tasks should get small timeslices for best
>interactive feeling, and low priority (cpu hog) tasks should get large
>timeslices for best efficiency, anyway they can be preempted by higher
>priority tasks if needed.
>

Its done this way because this is really how the priorities are
enforced. With some complicated exceptions, every task will be
allowed to complete 1 timeslice before any task completes 2
(assuming they don't block).

So higher priority tasks need bigger timeslices.

>
>also, i think dynamic priority should be used for timeslice calculation
>instead of static priority. the reason is, if a low priority task get a
>priority boost (to prevent starvation, for example) it should use the
>small timeslice corresponding to it's new priority level, instead of
>using it's original large timeslice that can ruin the interactive feel.
>

Among other things, yes, I think this is a good idea too. I'll be
addressing both these issues in my scheduler fork.

I do have dynamic timeslices, but currently high priority tasks
still get big timeslices.



  reply	other threads:[~2003-08-19  3:06 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-08-19  2:54 scheduler interactivity: timeslice calculation seem wrong Eric St-Laurent
2003-08-19  3:06 ` Nick Piggin [this message]
2003-08-19  4:07   ` Eric St-Laurent
2003-08-19  5:23     ` Nick Piggin
2003-08-19  6:54       ` Eric St-Laurent
2003-08-19 19:18         ` bill davidsen
2003-08-19 23:48           ` Eric St-Laurent
2003-08-19 23:54           ` Eric St-Laurent
2003-08-19 19:01       ` bill davidsen
2003-08-20  0:15         ` Eric St-Laurent
2003-08-20  0:32           ` David Lang
2003-08-20  0:48             ` William Lee Irwin III
2003-08-20  4:11               ` Bill Davidsen
2003-08-20  4:36                 ` William Lee Irwin III
2003-08-20 13:59                 ` Andrew Theurer
2003-08-20 16:18                   ` Bill Davidsen
2003-08-20  2:52         ` Nick Piggin
2003-08-19 19:02     ` Mike Fedyk
2003-08-19 17:51   ` Mike Fedyk
2003-08-20  2:41     ` Nick Piggin
2003-08-20 18:45       ` Mike Fedyk
2003-08-19  4:13 ` Con Kolivas
2003-08-19  4:23   ` Eric St-Laurent
2003-08-19  4:29     ` Con Kolivas
2003-08-19  5:06       ` Eric St-Laurent
2003-08-19  6:18         ` William Lee Irwin III

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=3F419449.4070104@cyberone.com.au \
    --to=piggin@cyberone.com.au \
    --cc=ericstl34@sympatico.ca \
    --cc=linux-kernel@vger.kernel.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox