Re: SCHED_IDLE documentation

From: Ingo Molnar
Date: Mon Mar 03 2008 - 05:04:48 EST



* Arnd Bergmann <arnd@xxxxxxxx> wrote:

> On Monday 03 March 2008, Ingo Molnar wrote:
> > > * What's the difference between SCHED_IDLE and SCHED_BATCH?
> >
> > SCHED_BATCH can still have nice levels from -20 to +19, it is a modified
> > SCHED_OTHER/SCHED_NORMAL for "throughput oriented" workloads.
> >
> > SCHED_IDLE overrides the nice settings and it means a "super idle"
> > workload.
>
> Does that mean that a SCHED_IDLE task still runs some of the time if
> you have a CPU hog running on +19, or can any other process starve the
> SCHED_IDLE task?

yes, even SCHED_IDLE tasks get some CPU time - so complete starvation
should not be possible. We dont really want to define the exact amount
of time they need. (we might want to change that in the future) But it
will always be less prio than nice +19 :-) You can think of it as if it
was "nice +30".

> What happens if you have two SCHED_IDLE tasks on a single CPU, do they
> get equal share, or will they just run as batch jobs?

they get equal share.

you can try it out too: if you have 2.6.23 or newer kernels then just
pick up schedtool and use "schedtool -I" to run SCHED_IDLE tasks.

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