Re: [patch] softirq performance fixes, cleanups, 2.4.10.

Ingo Molnar (mingo@elte.hu)
Fri, 28 Sep 2001 19:46:43 +0200 (CEST)


On Fri, 28 Sep 2001 kuznet@ms2.inr.ac.ru wrote:

> More seriously, the question is not why these 10% appears, but rather
> why they _disappeared_ in 2.4.7.

the effects i saw (Ben is not around unfortunately, so i cannot confirm
neither deny whether there is any correlation between the effects Ben saw
and the effects i saw) were due to ksoftirqd's generic tendency to
increase the latency between the issuing of work and the completion of it.
Increasing ksoftirqd's priority (in fact, setting current->counter = 2
everytime schedule() is called :-) does not fix this fundamental property
=> it still causes 'work generators' (processes) to use more CPU time than
'work completion' (irqs, softirqs). Furthermore, it also increases the
latency between hardirqs and softirqs.

so my patch makes it sure that work is completed as soon as possible - but
i've also kept an exit door open. [which you might find insufficient, but
that i think is up to individual tuning anyway - i think i'm generally
running faster machines than you, so our perspectives are slightly
different.]

[processes are not always work generators, and irqs/softirqs not always do
work completion, but i think generally they fit nicely into these two
categories. Eg. the TCP stack often generates new work from softirqs, but
IMO this does not change the fundamental equation.]

Ingo

-
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/