All of lore.kernel.org
 help / color / mirror / Atom feed
* [patch] CFS (Completely Fair Scheduler), v2
@ 2007-04-16 22:07 Ingo Molnar
  2007-04-16 22:12 ` S.Çağlar Onur
                   ` (3 more replies)
  0 siblings, 4 replies; 37+ messages in thread
From: Ingo Molnar @ 2007-04-16 22:07 UTC (permalink / raw)
  To: linux-kernel
  Cc: Linus Torvalds, Andrew Morton, Con Kolivas, Nick Piggin,
	Mike Galbraith, Arjan van de Ven, Peter Williams, Thomas Gleixner,
	caglar, Willy Tarreau, Gene Heskett, Dmitry Adamushko


this is the second release of the CFS (Completely Fair Scheduler) 
patchset, against v2.6.21-rc7:

   http://redhat.com/~mingo/cfs-scheduler/sched-cfs-v2.patch

i'd like to thank everyone for the tremendous amount of feedback and 
testing the v1 patch got - i could hardly keep up with just reading the 
mails! Some of the stuff people addressed i couldnt implement yet, i 
mostly concentrated on bugs, regressions and debuggability.

there's a fair amount of churn:

   15 files changed, 456 insertions(+), 241 deletions(-)

But it's an encouraging sign that there was no crash bug found in v1, 
all the bugs were related to scheduling-behavior details. The code was 
tested on 3 architectures so far: i686, x86_64 and ia64. Most of the 
code size increase in -v2 is due to debugging helpers, they'll be 
removed later. (The new /proc/sched_debug file can be used to see the 
fine details of CFS scheduling.)

Changes since -v1:

 - make nice levels less starvable. (reported by Willy Tarreau)

 - fixed child-runs first. A /proc/sys/kernel/sched_child_runs_first 
   flag can be used to turn it on/off. (This might fix the Kaffeine bug
   reported by S.Çağlar Onur <)

 - changed SCHED_FAIR back to SCHED_NORMAL (suggested by Con Kolivas)

 - UP build fix. (reported by Gabriel C)

 - timer tick micro-optimization (Dmitry Adamushko)

 - preemption fix: sched_class->check_preempt_curr method to decide 
   whether to preempt after a wakeup (or at a timer tick). (Found via a
   fairness-test-utility written for CFS by Mike Galbraith)

 - start forked children with neutral statistics instead of trying to 
   inherit them from the parent: Willy Tarreau reported that this 
   results in better behavior on extreme workloads, and it also 
   simplifies the code quite nicely. Removed sched_exit() and the 
   ->task_exit() methods.

 - make nice levels independent of the sched_granularity value

 - new /proc/sched_debug file listing runqueue details and the rbtree

 - new SCH-* fields in /proc/<NR>/status to see scheduling details

 - new cpu-hog feature (off by default) and sysctl tunable to set it: 
   /proc/sys/kernel/sched_max_hog_history_ns tunable defaults to
   0 (off). Positive values are meant the maximum 'memory' that the 
   scheduler has of CPU hogs.

 - various code cleanups

 - added more statistics temporarily: sum_exec_runtime, 
   sum_wait_runtime.

 - added -CFS-v2 to EXTRAVERSION

as usual, any sort of feedback, bugreports, fixes and suggestions are 
more than welcome,

	Ingo

^ permalink raw reply	[flat|nested] 37+ messages in thread

end of thread, other threads:[~2007-04-18 19:15 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-16 22:07 [patch] CFS (Completely Fair Scheduler), v2 Ingo Molnar
2007-04-16 22:12 ` S.Çağlar Onur
2007-04-17  8:59   ` Ingo Molnar
2007-04-17 14:45     ` S.Çağlar Onur
2007-04-17 15:48       ` Gabriel C
2007-04-17 16:01       ` Ingo Molnar
2007-04-17  4:06 ` Peter Williams
2007-04-17  6:49   ` Ingo Molnar
2007-04-17  4:53 ` Gene Heskett
2007-04-17  5:25   ` Willy Tarreau
2007-04-17  5:51     ` Gene Heskett
2007-04-17  7:18       ` Paolo Ornati
2007-04-17  5:51     ` Mike Galbraith
2007-04-17  6:27     ` Ingo Molnar
2007-04-18  0:06     ` Peter Williams
2007-04-17  6:18   ` Ingo Molnar
2007-04-17  7:01     ` Ingo Molnar
2007-04-17  7:31       ` Davide Libenzi
2007-04-17  7:39         ` Ingo Molnar
2007-04-17 17:18           ` Gene Heskett
2007-04-17 17:15       ` Gene Heskett
2007-04-17 17:22       ` Gene Heskett
2007-04-17  8:03     ` Davide Libenzi
2007-04-17  8:18       ` Nick Piggin
2007-04-17  8:26         ` Ingo Molnar
2007-04-17  8:41           ` Nick Piggin
2007-04-17  8:57             ` Ingo Molnar
2007-04-17  8:20       ` Ingo Molnar
2007-04-17 16:12     ` Gene Heskett
2007-04-17  6:46 ` Peter Williams
2007-04-17  7:51   ` William Lee Irwin III
2007-04-17  8:16     ` Ingo Molnar
2007-04-17  8:52       ` Ingo Molnar
2007-04-17 14:05       ` Peter Williams
2007-04-17  8:30     ` Peter Williams
2007-04-18 19:15       ` Peter Williams
2007-04-17  9:53   ` Ingo Molnar

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.