[patch] CFS scheduler, -v6

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



i'm pleased to announce release -v6 of the CFS scheduler patchset. The 
main goal of CFS is to implement "high quality desktop scheduling" as 
well as technically possible.

The CFS patch against v2.6.21-rc7 or against v2.6.20.7 can be downloaded 
from the usual place:

    http://redhat.com/~mingo/cfs-scheduler/

i got lots of -v5 feedback (thanks and please keep the reports coming!) 
so the -v6 release includes many bugfixes and improvements:

    19 files changed, 317 insertions(+), 744 deletions(-)

the biggest user-visible changes in -v6 are various refinements to the 
precise-scheduling infrastructure that should result in generally better 
interactivity and a smoother desktop. In particular a number of "movie 
playback lags/stutters" and "firefox lags under load" type of 
regressions have been resolved. (Please re-report any regression that 
might not be fixed yet.)

Changes since -v5:

 - feature: increase the preemption granularity value on SMP systems. 
   Idea and code comes from the SD scheduler of Con Kolivas, with Con's
   kind permission. (thanks Con!)

 - fix: the "privileged_nice_level=X" boot option should convert signed
   integers. (Mike Galbraith)

 - build fix: yield_to unistd.h fix (Srivatsa Vaddagiri)

 - build fix: CONFIG_HEADERS_CHECK complained about sched.h.
   (reported by Zach Carter)

 - build fix: normalize_rt_tasks() UP build fix. (Mike Galbraith)

 - interactivity fix: sched_clock() accuracy fixes. This should resolve 
   certain types of interactivity regressions reported on systems that
   change their CPU frequencies. (mainly laptops)

 - default settings tweak: changed the X renicing default from -19 to 
   -10, based on tester feedback. (Might still be too much - more 
   feedback is needed.)

 - feature: introduced "wakeup granularity" and added the 
   /proc/sys/kernel/sched_wakeup_granularity_ns tunable, set to 0 by 
   default for now. This is now distinct from the sched_granularity_ns
   'preemption granularity' property of the scheduler - allowing a
   more agressive increase in the preemption granularity without
   jeopardizing interactivity.

 - debugging feature: SysRq-T now also shows the /proc/sched_debug 
   output - useful to generate a dump of all relevant scheduler state in 
   one easy step.

 - debugging feature: make SysRq-Nice normalize negative nice level 
   tasks too and reset the CFS state.

 - debugging: extend /proc/sched_debug with a few more clock related 
   fields, to be able to better debug problems caused by unstable 
   clocks.

 - upstream fix: SysRq-T should show runnable tasks

 - optimization: introduce p->load_shift to simplify the 64-bit math on 
   32-bit systems and avoid expensive 64-bit divisions.

 - cleanup: renamed CONFIG_RENICE_X to CONFIG_BOOST_X.

 - cleanup: got rid of more unused code from sched.c

 - lots of other smaller stuff i forgot :)

As usual, any sort of feedback, bugreport, fix and suggestion is more 
than welcome,

	Ingo
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux