patch O1int for 2.5.73 - interactivity work

From: Con Kolivas (kernel@kolivas.org)
Date: Wed Jun 25 2003 - 11:09:45 EST


Hi all

I've used the corner cases described that cause a lot of the interactivity
problems to develop this patch. What it does different to default (without
nasty hacks) is the following:

The interactivity is based on the max sleep avg (10s) as previously, unless
the thread has been running for less than 10s. In that case it is based on
the duration it has been running, with a minimum of 10 jiffies to estimate
the interactivity (perhaps more might be appropriate here). This should
minimise tasks taking ages to be categorised as interactive.

If tasks sleep for a long time (>1s) they are no longer classified as
interactive, but idle - meaning they receive their static priority. However,
since they _may_ become interactive, the period over which the interactivity
is estimated is decreased (1sec, perhaps can be reduced) so they may become
interactive rapidly again. This should minimise idle tasks (like BASH) that
suddenly become cpu hungry from stalling everything.

I'm still working on something for the "xmms stalls if started during very
heavy load" as a different corner case.

This is only a compile tested patch (need sleep bad) but has been tested in
2.4 form and works nicely at avoiding those corner test cases.

Please comment and test if you can.

Con



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



This archive was generated by hypermail 2b29 : Mon Jun 30 2003 - 22:00:19 EST