Re: O(1) scheduler starvation

Helge Hafting (helgehaf@aitel.hist.no)
Wed, 18 Jun 2003 14:16:22 +0200


Mike Galbraith wrote:
> At 09:53 AM 6/18/2003 +0200, Felipe Alfaro Solana wrote:
>
>> Hi!
>>
>> I've been poking around and found the following link on O(1) scheduler
>> starvation problems:
>>
>> http://www.hpl.hp.com/research/linux/kernel/o1-starve.php
>>
>> The web page contains a small test program which supposedly is able to
>> make two processes starvate. However, I've been unable to reproduce what
>> is described in the above link. In fact, the CPU usage ratio ranges
>> between 60-40% or 70-30% in the worst cases.
>
>
> (you're talking about with my monotinic_clock() diff in your kernel right?)
>
> If you examine the priorities vs cpu usage, therein lies a big fat bug.
>
> I think the fundamental problem is that you can only execute in series,
> but can sleep in parallel, which makes for more sleep time existing than
> all execution time combined.

Would dividing the sleep time by the number of sleepers fix this?
Or is division a too heavy operation here?

Helge Hafting

-
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/