Re: scheduling policy was: Re: 2.6.37 considered stable?

From: Dr. Martin Rogge
Date: Sat Feb 05 2011 - 07:27:26 EST


Mike Galbraith wrote:

>> Gene, have you tried schedtool to set the scheduling policy of the
>> process to SCHED_FIFO or even SCHED_ISO?
>
> /*
> * Scheduling policies
> */
> #define SCHED_NORMAL 0
> #define SCHED_FIFO 1
> #define SCHED_RR 2
> #define SCHED_BATCH 3
> /* SCHED_ISO: reserved but not implemented yet */
> #define SCHED_IDLE

When I mentioned SCHED_ISO I was making the mental note "provided you are
running a scheduler that supports SCHED_ISO" as I do.

> You only want to run apps RT if they really really need it though. In
> many cases, running an app RT will reduce performance, and may well
> increase latencies. (deterministic != quick like a bunny;)

I agree with that statement, and on all machines I own the video applications
run under SCHED_NORMAL nice 0. However, on machines where the audio/video
performance is borderline, it may help to tweak the scheduling policy (save
buying new hardware).

Regarding "quick like a bunny": depending on the KPI (forgive the corporate
lingo ;-) you are looking at, it means different things. For me as a desktop
user, it is determined by the "snappiness" and "smoothness" of the user
interface and all other applications with direct user interaction. Throughput
KPIs are less relevant, although still important for foreground applications.

A solution that gives me that, to the extent that compiling large projects in
the background is unnoticable to the user experience, is superior to others.
Unfortunately, in my experience, auto-this and auto-that is not always the
answer.

Anyway, all I wanted to do is to encourage Gene to try something out and see
if it helps.

Martin

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