SCHED_SOFTRR patch

Steven Newbury
2003-07-28T20:28:23Z

I personally see your SCHED_SOFTRR as the correct solution for multimedia
applications. But as it is currently tuned I have been unable to get it to
work adequately with a relatively undemanding program, XMMS. I say undemanding
because XMMS only uses about 2-4% CPU time on my test machine (P3/933MHz) when
playing mp3's.

While testing SCHED_SOFTRR with XMMS I had to modify XMMS slightly since it
usually checks for uid 0 before enabling SCHED_RR.

Under 2.6.0-test1 based kernels I have experienced quite a lote of drop-outs
with XMMS playing mp3's with a moderate load, however, when run as root (with
SCHED_RR) I encountered no drop-outs at all. When using SOFTRR under I had
very choppy playback when the machine was under load. It was a constant
jittering more than intermittent drop-outs.

I have been using a 2.6.0-test2-O10int based kernel in my latest tests.

With 2.6.0-test2-O10int it is very hard to get drop-outs unless I run it with
SCHED_SOFTRR! The jitteriness is gone but a moderate load causes dropouts,
much like non SCHED_RR on 2.6.0-test1 based kernels. SCHED_RR still runs
perfectly though. It could be that SCHED_SOFTRR is being too "tight" with the
CPU time it is giving the Real-Time thread.

I have tried various values for the SCHED_TS_KSOFTRR, MIN_SRT_TIMESLICE,
MAX_SRT_TIMESLICE constants, but have been as yet unable to find values that
produce a good result.

The lattest.c program does show that SOFT_RR is working as does top which shows
RT priority for XMMS.

=====
Steve

__________________________________________________
Yahoo! Plus - For a better Internet experience