Re: [Announce] [patch] Modular Scheduler Core and Completely Fair Scheduler [CFS]



Matt Mackall wrote:
On Wed, Apr 18, 2007 at 08:37:11AM +0200, Nick Piggin wrote:

[2] It's trivial to construct two or more perfectly reasonable and
desirable definitions of fairness that are mutually incompatible.
Probably not if you use common sense, and in the context of a replacement
for the 2.6 scheduler.

Ok, trivial example. You cannot allocate equal CPU time to
processes/tasks and simultaneously allocate equal time to thread
groups. Is it common sense that a heavily-threaded app should be able
to get hugely more CPU than a well-written app? No. I don't want Joe's
stupid Java app to make my compile crawl.

On the other hand, if my heavily threaded app is, say, a voicemail
server serving 30 customers, I probably want it to get 30x the CPU of
my gzip job.

Matt, you tickled a thought... on one hand we have a single user running a threaded application, and it ideally should get the same total CPU as a user running a single thread process. On the other hand we have a threaded application, call it sendmail, nnrpd, httpd, bind, whatever. In that case each thread is really providing service for an independent user, and should get an appropriate share of the CPU.

Perhaps the solution is to add a means for identifying server processes, by capability, or by membership in a "server" group, or by having the initiating process set some flag at exec() time. That doesn't necessarily solve problems, but it may provide more information to allow them to be soluble.

--
Bill Davidsen <davidsen@xxxxxxx>
"We have more to fear from the bungling of the incompetent than from
the machinations of the wicked." - from Slashdot
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



Relevant Pages

  • [Summary] Diagnosis fun...
    ... 2% idle time sucks, and more than likely the system is CPU bound, and can ... app depends so heavily on the kernel, ... I replaced the default Solaris 8 TimeSharing dispatch table ...
    (SunManagers)
  • Re: [PATCH 6/6] sched: disabled rt-bandwidth by default
    ... An application which hogs the CPU for 9.9 ... whether POSIX allows to do that or Linux obeyed the ... I appreciate the nitpicking janitor of the most important POSIX ... Simply because we use common sense instead of following every single ...
    (Linux-Kernel)
  • Re: Timing your loops
    ... loops it updates every iteration causing cpu usage. ... And yes i do need multiple separate windows. ... However all this said if letting the app suck 100% isn't actually a bad ... all the cpu power left....mustn't be left for a rainy day after all. ...
    (microsoft.public.win32.programmer.directx.managed)
  • Re: Timing your loops
    ... Instead of taking a 'greedy' approach that uses up as much CPU time as possible unless you remember to stop it, have you considered an approach whereby you generally do nothing, but occasionally you'll render a frame? ... Providing your timer-handling code takes less than 30ms to execute, your app should go back to sleep between frames. ... After all they are running and while doing nothing are allocated all the cpu power left....mustn't be left for a rainy day after all. ...
    (microsoft.public.win32.programmer.directx.managed)
  • Re: performance Winxp vs Linux
    ... Re: 'low' CPU consumption ... A benchmark app we use executes in a given time on a new Win2K box. ... Long story short - Under XP, drivers from the motherboard driver CD had ...
    (comp.lang.tcl)

Loading