Re: Voluntary Preemption + concurent games

From: Nick Piggin
Date: Mon Jul 12 2004 - 08:38:04 EST


Aivils wrote:
Hi All!

I still use in my home minicomputer under Linux, where
3 users use one CPU/RAM , but own video.
By default 2.6.XX task scheduler don' t like concurent applications
at all. 2.6.XX task scheduler allways raise on top of tasks only one
task and keep it on top until user stop it.
This rule is very unwanted for minicomputers, because multile
local users will use one CPU and feel lucky.


The CPU scheduler in 2.6 does a lot of special casing in order
to boost interactivity. This can cause weird behaviour and
imbalances like you are seeing when multiple things are running.

As point of reference i use 2.4.XX tack scheduler, which is very
"righteous" and allways give CPU time for all tasks. Under 2.4.XX
concurent games run smooth.

2.6.XX non-preemptive and 2.6.XX voluntary-preemptive task
scheduling looks very similar. My gamer' s eye report me very
thiny and very subjective difference - preferable is voluntary-preemtive.
Anyway all concurent CPU intensive tasks should be started with
nice -n +19 game-bin . Any other nice value remake one of
running game to slide show or both running games became slide show.

So we should start any game with nice +19. In is this set goes in
netscape and konqueror because of java web-chat and games.

At least voluntary-preemptive allow me move away from 2.4.26


2.6's CPU scheduler gives nice +19 tasks shorter timeslices, so you
are effectively giving everything better latency.

I have a patchset for 2.6 with some scheduler changes that you might
like to try, here: http://www.kerneltrap.org/~npiggin/2.6.7-np8/, and
let me know how it goes if you do try it. If you need any help getting
it going, please email me privately.
-
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/