OK. So the scheduler has a behaviour which is complex enuf in
different situations. We could nearly endless elaborate them.
As far as i understand the scheduler is guided by a whole bunch of
constraints which exploit properties of the system in order to decide
what to do next.
So far as we observe the behaviour of the scheduler there are some
situations where context switching is too expensive compared to the
remaining load of the request, some caches are flushed which has
negative sideeffects on the overall performance, the cost of switching
can vary on different hardware. One even could speculate and try out
stating that switching one thread back and forth gets less `usefull'
the more frequently it happens etc.
Brightening things a bit, the remaining questions are:
- what are _all_ these constraints
- how are they balanced against each other
- does the constraint-system (so to call) cover most of the
interesting situations, so that an optimal scheduling could be
found
- how expensive is it to evaluate the constraints
Micha.
-- -- Michael Schulz, Uni Hamburg- 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/