[Cbe-oss-dev] SCHED_IDLE documentation

Ingo Molnar mingo at elte.hu
Mon Mar 3 21:04:18 EST 2008


* Arnd Bergmann <arnd at arndb.de> 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



More information about the cbe-oss-dev mailing list