At 11:49 PM 5/20/2003 -0700, David Mosberger wrote:
>Recently, I started to look into some odd performance behaviors of the
>O(1) scheduler. I decided to document what I found in a web page
>at:
>
> http://www.hpl.hp.com/research/linux/kernel/o1.php
<snip>
>Comments welcome.
The page mentions persistent starvation. My own explorations of this issue
indicate that the primary source is always selecting the highest priority
queue. Combine that with the round-robin, and you have a good chance of
being grossly unfair with some workloads. I know for certain that lock
holders in the active array can be starved for very long periods by tasks
entering higher priority queues, thereby causing even more starvation when
they finally get the cpu and can release the lock (sleepers go through the
roof).
Try the attached overly simplistic (KISS:) diff, and watch your starvation
issues be very noticably reduced.
-Mike
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Fri May 23 2003 - 22:00:43 EST