[lkml]   [1999]   [May]   [7]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
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:

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



To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:51    [W:0.135 / U:2.340 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site