Re: [PATCH] Performance regression in 2.6.7-rc3

Ingo Molnar
2004-06-15T04:55:17Z

* Con Kolivas <kernel@kolivas.org> wrote:

> with a little bit of detective work and help from Wli we tracked down that
> this patch caused it:
> [PATCH] sched: improve wakeup-affinity

> A massive increase in idle time was observed and the throughput
> dropped by 40% Reversing this patch gave these results:

> backsched1: http://khack.osdl.org/stp/293865/
> Composite Query Processing Power Throughput Numerical Quantity
> 193.93 145.95 257.67
>
> It may be best to reverse this patch until the regression is better
> understood.

agreed. It is weird because Nick said that pgsql was tested with the
patch - and we applied the patch based on those good results. Nick?

Anyway, does the patch below fix the pgsql problem? It reverts to the
more agressive idle-balancing variant (which isnt strictly necessary for
the bw_pipe problem).

Ingo

Signed-off-by: Ingo Molnar <mingo@elte.hu>

--- linux/kernel/sched.c
+++ linux/kernel/sched.c
@@ -1625,8 +1626,7 @@
return busiest;

out_balanced:
- if (busiest && idle != NOT_IDLE && max_load > SCHED_LOAD_SCALE) {
+ if (busiest && (idle == NEWLY_IDLE ||
+ (idle == IDLE && max_load > SCHED_LOAD_SCALE)) ) {
*imbalance = 1;
return busiest;
}