kernel patch to improve the desktop interactivity under system strain

imatveev13 imatveev13 at
Sun Nov 28 23:47:49 CET 2010

Hello All,

A report on kernel improvement was posted:

The ~200 Line Linux Kernel Patch That Does Wonders
Published on November 16, 2010
Written by Michael Larabel

In recent weeks and months there has been quite a bit of work towards
improving the responsiveness of the Linux desktop with some very significant
milestones building up recently and new patches continuing to come. This
work is greatly improving the experience of the Linux desktop
when the computer is withstanding a great deal of CPU load and memory
strain. Fortunately, the exciting improvements are far from over. There is a
new patch that has not yet been merged but has undergone a few revisions
over the past several weeks and it is quite small -- just over 200 lines of
code -- but it does wonders for the Linux desktop.

The patch being talked about is designed to automatically create task groups
per TTY in an effort to improve the desktop interactivity under system
strain. Mike Galbraith wrote the patch, which is currently in its third
version in recent weeks, after Linus Torvalds inspired this idea. In its
third form (patch), this patch only adds 224 lines of code to the kernel's
scheduler while stripping away nine lines of code, thus only 233 lines of
code are in play.

Tests done by Mike show the maximum latency dropping by over ten times and
the average latency of the desktop by about 60 times. Linus Torvalds has
already heavily praised (in an email) this miracle patch.

    Yeah. And I have to say that I'm (very happily) surprised by just how
small that patch really ends up being, and how it's not intrusive or ugly

    I'm also very happy with just what it does to interactive performance.
Admittedly, my "testcase" is really trivial (reading email in a web-browser,
scrolling around a bit, while doing a "make -j64" on the kernel at the same
time), but it's a test-case that is very relevant for me. And it is a _huge_

    It's an improvement for things like smooth scrolling around, but what I
found more interesting was how it seems to really make web pages load a lot
faster. Maybe it shouldn't have been surprising, but I always associated
that with network performance. But there's clearly enough of a CPU load when
loading a new web page that if you have a load average of 50+ at the same
time, you _will_ be starved for CPU in the loading process, and probably
won't get all the http requests out quickly enough.

    So I think this is firmly one of those "real improvement" patches. Good
job. Group scheduling goes from "useful for some specific server loads" to
"that's a killer feature".

View this message in context:
Sent from the Openmoko Community mailing list archive at

More information about the community mailing list