Re: 2.6.8-rc2-mm2

From: Helge Hafting
Date: Thu Aug 05 2004 - 03:31:51 EST


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

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.

Helge Hafting


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