Messages in this thread Patch in this message | | | Subject | Re: [patch 2.6.16-mm2 10/9] sched throttle tree extract - kill interactive task feedback loop | From | Mike Galbraith <> | Date | Wed, 05 Apr 2006 19:38:51 +0200 |
| |
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@gmx.de>
--- 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@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |