Re: 2.6.8-rc2-mm2

From: Con Kolivas
Date: Thu Aug 05 2004 - 04:36:37 EST


Helge Hafting wrote:
Con Kolivas wrote:

Ingo Molnar writes:


* Con Kolivas <kernel@xxxxxxxxxxx> wrote:


Can you define them please? I haven't had any reported to me.



sure: take a process that uses 85% of CPU time (and sleeps 15% of the
time) if running on an idle system. Start just two of these hogs at
normal priority. 2.6.8-rc2-mm2 becomes almost instantly unusable even
over a text console: a single 'top' refresh takes ages, 'ls' displays
one line per second or so. Start more of these and the system
effectively locks up.



It's only if I physically try and create such a test application that I can reproduce it. I haven't found any real world load that does that - but of course that doesn't mean I should discount it. However, interactive mode off doesn't exhibit it and it should be easy enough to fix for interactive mode on. Thanks for pointing it out.


I can easily imagine this sort of real-life application. Anything that generate real-time data, such as sound or video for immediate playback will use some continous fraction of cpu, depending on how much data and how fast the cpu happens to be. A scheduler with such
a problem will now and then cause trouble when some processor needs just the
"wrong" percentage of its capacity to run the task(s). Consider someone playing several video files until he exceeds the capacity of the machine. Video skipping frames is then ok, a frozen UI is not. Or consider a multiuser machine running several games. Or even a parallell kernel compile when the source isn't cached. The compiler(s) will work for a while, wait for disk for a while, work for a while . . .

Your concerns are valid, and are relevant for _any_ scheduler design. However none of these occur with staircase. Ingo is describing a special case where it runs for more than 1ms and less than 10ms. Most things do not run exactly in this manner, which is why you haven't seen it, and neither have I till I created his test case.

As for the multiuser machine, this is actually an area where staircase _excels_ at when put into non-interactive mode. The fact that interactivity is not as good in interactive mode under load in a single desktop mode doesn't really describe that interactivity is still remarkably good considering how strict the cpu distribution is - and that's by design. I have now a couple of users using staircase in non-interactive mode sharing resources between up to 10 users happily, where previously the mainline 2.6 kernel was unable to do this in a fair manner.

2.6.8-rc2-mm2 seems to work fine for me right now, but I hope there will be solutions for this sort of problem.

Great.

Helge Hafting

Cheers,
Con

Attachment: signature.asc
Description: OpenPGP digital signature