Re: [patch 2.6.16-mm2 10/9] sched throttle tree extract - killinteractive task feedback loop

From: Mike Galbraith
Date: Wed Apr 05 2006 - 13:38:56 EST


Greetings,

The patch below stops interactive tasks from feeding off each other
during round-robin.

With this 10th patch in place, a busy server with _default_ throttle
settings (ie tunables may now be mostly unneeded) looks like this:

[root]:# w
18:38:00 up 23 min, 2 users, load average: 10.07, 9.94, 7.50
USER TTY LOGIN@ IDLE JCPU PCPU WHAT
root tty1 18:15 22:12 30.89s 30.84s top d1
root pts/0 18:20 0.00s 0.07s 0.00s w
[root]:# time netstat|grep :81|wc -l
1758

real 0m0.304s
user 0m0.144s
sys 0m0.135s
[root]:# time netstat|grep :81|wc -l
1776

real 0m0.306s
user 0m0.118s
sys 0m0.163s
[root]:# time netstat|grep :81|wc -l
1799

real 0m0.493s
user 0m0.146s
sys 0m0.141s
[root]:#

My desktop still feels just peachy.

Signed-off-by: Mike Galbraith <efault@xxxxxx>

--- linux-2.6.16-mm2/kernel/sched.c-9.export_tunables 2006-03-31 13:37:09.000000000 +0200
+++ linux-2.6.16-mm2/kernel/sched.c 2006-04-05 19:22:01.000000000 +0200
@@ -3480,7 +3480,7 @@ go_idle:
queue = array->queue + idx;
next = list_entry(queue->next, task_t, run_list);

- if (!rt_task(next) && interactive_sleep(next->sleep_type)) {
+ if (!TASK_INTERACTIVE(next) && interactive_sleep(next->sleep_type)) {
unsigned long long delta = now - next->timestamp;
if (unlikely((long long)(now - next->timestamp) < 0))
delta = 0;


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