Re: Regression seen for patch "sched:dont decrease idle sleep avg"

Martin Bligh
2006-05-09T01:07:30Z

Con Kolivas wrote:
> Tim Chen writes:
>
>> Con,
>>
>> As a result of the patch "sched:dont decrease idle sleep avg"
>> introduced after 2.6.15, there is a 4% drop in Volanomark throughput
>> on our Itanium test machine. Probably the following happened:
>> Compared to previous code, this patch slightly increases the the
>> priority boost when a job is woken up.
>> This adds priority spread and variations to the wait time of jobs
>> on run queue if we have a lot of similar jobs in the system.
>>
>> See patch:
>> http://www.kernel.org/git/?
>> p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=e72ff0bb2c163eb13014ba113701bd42dab382fe
>
>
>
> Lovely
>
> This patch corrects a bug in the original code which unintentionally
> dropped the priority of tasks that were idle but were already high
> priority on other merits. It doesn't further increase the priority. The
> 4% almost certainly is due to the lack of any locking in the threading
> model used by the java virtual machine on volanomark and it being pure
> luck that penalising particularly idle tasks previously improved the
> wakeup timing of basically yielding dependant threads. This patch did
> fix bugs related to interactive yet idle tasks like consoles
> misbehaving. The fact that the presence of that particular bug improved
> a multithreaded benchmark that uses such a threading model is pure
> chance and (obviously) not design. I wouldn't like to see this bug
> reintroduced on the basis of this benchmark result.

Volanomark (and most Java benchmarks) are random number generators
anyway, especially when it comes to scheduler patches. They're doing
such utterly stupid things anyway that I don't think we should care
if we break them ...

M.