public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Timothy Miller <miller@techsource.com>
To: Muli Ben-Yehuda <mulix@mulix.org>
Cc: Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: Scheduler: Process priority fed back to parent?
Date: Tue, 16 Mar 2004 11:55:41 -0500	[thread overview]
Message-ID: <4057318D.9090901@techsource.com> (raw)
In-Reply-To: <20040316160246.GL28008@mulix.org>



Muli Ben-Yehuda wrote:
> On Tue, Mar 16, 2004 at 11:19:46AM -0500, Timothy Miller wrote:
> 
> 
>>Unfortunately, the OS has to play babysitter to processes, because 
>>they're guaranteed to misbehave.  Preemption exists to ensure fairness 
>>amongst processes.  Thus, while you're right that it would be nice to 
>>have processes report their CPU requirements, if we were to actually DO 
>>that, it would be a disaster.
> 
> 
> I agree we should do the best thing possible without any prior
> knowledge of what a process should do. I don't agree we should add
> pointless complexity to the scheduler for dubious gains (getting rid
> of the very short ramp up time). Of course, if you think it's useful,
> feel free to implement it and let's resume the discussion when we have
> some numbers. 


If shortening ramp-up times is the only benefit, then it's not worth the 
effort.  The objective is continuity and over-all feel of the system.

With Nick's and Con's schedulers, if you have a set of processes that 
are running continuously, then after a brief period, everything has 
settled into its ideal state.  The interactive processes are 
interactive, the CPU-bound ones are penalized, etc.

But real systems aren't like this.  Processes are launched and killed 
constantly.  Consider what a shell script does!  To have program 
behavior from one time affect how the program is run at a later time 
would allow system behavior to be smooth over many launch/kill cycles.


And having parent processes (eg. shell) maintain information on child 
behavior would also help, because then a shell script would behave more 
like a single program than many independent programs.  Compiles would 
affect the system less because 'make' would maintain information on 
compiler behavior, making the impact of compiler launches much less 
negative.

In FACT, that I think I may be on to something here... Hmmm.  So far, 
process schedulers have been trying to BOOST priority of interactive 
processes.  That's great.  But maybe an even BIGGER problem is that 
every time gcc (and cc1) is launched during a kernel compile, it's given 
too high of a priority, and by the time the priority is corrected, the 
compile has finished for that .c file.

This sounds SO familiar... I know this has been discussed before by 
people much smarter about this than I.


  reply	other threads:[~2004-03-16 16:51 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-16 15:16 Scheduler: Process priority fed back to parent? Timothy Miller
2004-03-16 15:46 ` Muli Ben-Yehuda
2004-03-16 16:19   ` Timothy Miller
2004-03-16 16:02     ` Muli Ben-Yehuda
2004-03-16 16:55       ` Timothy Miller [this message]
2004-03-16 18:49   ` Horst von Brand
2004-03-25 14:16     ` Pavel Machek
2004-03-16 16:06 ` Eric
2004-03-16 16:46   ` Timothy Miller
2004-03-16 19:23     ` Eric
2004-03-16 21:35       ` Timothy Miller
2004-03-16 23:05         ` Eric
2004-03-18  2:55       ` David Schwartz

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=4057318D.9090901@techsource.com \
    --to=miller@techsource.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mulix@mulix.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