Re: [PATCH] Minor scheduler fix to get rid of skipping in xmms

From: Nick Piggin
Date: Sun Sep 07 2003 - 04:30:37 EST




John Yau wrote:

Even if context switches don't cost anything, you still want to have
priorities so cpu hogs can be preempted by other tasks in order to
quickly respond to IO events. You want interactive tasks to be able
to sometimes get more cpu than cpu hogs, etc. Scheduling latency is
only a part of it.



Of course priorities are still necessary =) However assuming that
interactive tasks will always finish much much earlier than hogs, it's not
really worth it to give interactive tasks any special treatment when you
have very fine timeslices.


Its actually more important when you have smaller timeslices, because
the interactive task is more likely to use all of its timeslice in a
burst of activity, then getting stuck behind all the cpu hogs.



For example you have x that will use 100 ms and y that will use 5 ms, both
of the same priority. Assuming that x entered into the queue first and y
immediately after, at 20 ms timeslice, it will be 25 ms before y finishes.
However, at 1 ms timeslice, y finishes in 10 ms.



Yes. Also, say 5 hogs running, an interactive task needs to do something
taking 2ms. At a 2ms timeslice, it will take 2ms. At a 1ms timeslice it
will take 6ms.


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