Interesting analysis of linux kernel threading by IBM

Helge Hafting helgehaf en idb.hist.no
Vie Ene 21 20:31:59 CST 2000


Davide Libenzi wrote:
> 
> Hi Helge,
> 
> Friday, January 21, 2000 9:03 AM
> Helge Hafting <helgehaf en idb.hist.no> wrote :
> > Even better: dynamically use the best algorithm depending on the number
> > of
> > runnable processes.  The only problem I see with this is that calling
> > the
> > scheduler through a pointer (or if-statement) will have a overhead
> > of its own - every time.
> 
> You don't need to change the scheduler under normal environments since the
> patch
> perform equally in these cases giving better results under high load.

I have the impression that you wrote this:
>Is my thought that this patch must be included inside the scheduler since it
>gives higher performances
>with a lot of tasks and a 15 % less with 2 tasks ( at the same amount of
>switches / second )

earlier in the thread.  I have seen the argument before that such a loss
isn't
accaptable because most machines only have a few runnable threads.  The
common
case may have thousands of threads, but only a handful ready to run, 
with the rest blocked on io. (io being network or disk, a networking
benchmark doing
local communication only isn't realistic, and many databases cannot be
held 
entirely in memory eiter.)

This is why I suggested the dynamic approach, the few who actually get
more than
a handful of threads ready-to-run *most of the time* may then get better
performance
without punishing the vast majorities who seldom see a load above 2.

Helge Hafting

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



Más información sobre la lista de distribución Ayuda