[patch] CFS scheduler, -v8

Ingo Molnar
2007-05-01T21:23:06Z

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

The CFS patch against v2.6.21.1 (or against v2.6.20.10) can be
downloaded from the usual place:

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

-v7 resolved a couple of important regresisons while not introducing new
regressions, so i felt it was time to step forward: -v8 tries to address
one of the last (known) frontiers: 3D/OpenGL games^H^H^H applications
'smoothness'.

To achieve more scheduling smoothness, -v8 introduces a new 'precise
load calculation and smoothing' feature. (A variant of this was
suggested by Peter Williams in earlier CFS discussions - thanks Peter!)

i was able to reuse the rq->cpu_load[] load average calculation from
Peter Williams's smpnice code, and it's thus now utilized on UP too. As
a nice side-effect of CFS using a smoothed load metric, apps should also
start up faster under load. CFS now utilizes the full range of smpnice
metrics.

No other fundamental portion of CFS was touched, so the rate of change
is moderate:

7 files changed, 140 insertions(+), 79 deletions(-)

Changes since -v7:

- powerpc debug output and build warning fixes (Balbir Singh)

- documentation fixes (Zach Carter)

- interactivity: precise load calculation and load smoothing

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

Ingo