Messages in this thread | | | Date | Fri, 7 May 1999 18:09:43 +0200 (CEST) | From | Ingo Molnar <> | Subject | Re: Overscheduling DOES happen with high web server load. |
| |
On Fri, 7 May 1999, Rik van Riel wrote:
> It's based on the idea of a priority heap. Processes have > a quantum and a defer value. The quantum value is the length > of the process' time slice and the defer value is the time > at which it will be run next (sort of a deadline). > > The process at the top of the heap is the process with the > lowest (run next) defer value. After a process finishes it's > time slice, the defer value is incremented (say, by p->priority) > and the process is sorted down the B-tree. This means that the > algorithm for selecting the best process is O(1) on UP machines > and O(log(nr_cpus)) on SMP machines. > > Schedule_timeout() can be replaced by a simple resorting of > the heap. Basically we only need to remove processes from > the heap if they do blocking I/O or wait for a signal > (otherwise they would clutter up the heap).
so? And how do you handle VM and CPU (and who knows what type of other future) affinity?
-- mingo
- 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/
| |