lkml.org 
[lkml]   [1999]   [May]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Overscheduling DOES happen with high web server load.
Phillip Ezolt writes:
> On Fri, 7 May 1999, Andrea Arcangeli wrote:
>
> > On Thu, 6 May 1999, Phillip Ezolt wrote:
> >
> > >Although this would probably speed up the code, the underlying problem
> > >is still there. (The linear search for the next process) The patch basically
> >
> > I really don't think the linear search is a big issue. You had at _max_ 90
> > task running at the same time. I think the big issue is to avoid the not
> > needed schedule(). If you avoid them you drop from 40000 schedule/sec to
> > 3000 schedule/sec...
>
> Ok, you are right. The real problem is we are calculating goodness
> O(A*B).
>
> A= Number of processes on the runqueue
> B= Number of times schedule is called

Don't underestimate the cost of searching the run queue. Put 10
processes on the run queue and you more than double the cost of
schedule() to another process. For 90+ tasks on the run queue, the
cost is dominated by the linear search. The actual context switch is
nothing by comparison. My results are at:
http://www.atnf.csiro.au/~rgooch/benchmarks/linux-scheduler.html

Reducing the cost of goodness() will help a bit, but even the search
through the tasks on the run queue is quite expensive.

Regards,

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

\
 
 \ /
  Last update: 2005-03-22 13:51    [from the cache]
©2003-2011 Jasper Spaans