]> git.baikalelectronics.ru Git - kernel.git/commit
sched: adaptive scheduler granularity
authorPeter Zijlstra <a.p.zijlstra@chello.nl>
Sat, 25 Aug 2007 16:41:53 +0000 (18:41 +0200)
committerIngo Molnar <mingo@elte.hu>
Sat, 25 Aug 2007 16:41:53 +0000 (18:41 +0200)
commit1318da1db0116d1af1d0558ff935c4fa20762189
treef7b1234ce9e8ad0bc5d5af949949251240ec6a2c
parenta3c27d7a26b899f8b89904b1f4ef3489a0daab62
sched: adaptive scheduler granularity

Instead of specifying the preemption granularity, specify the wanted
latency. By fixing the granlarity to a constany the wakeup latency
it a function of the number of running tasks on the rq.

Invert this relation.

sysctl_sched_granularity becomes a minimum for the dynamic granularity
computed from the new sysctl_sched_latency.

Then use this latency to do more intelligent granularity decisions: if
there are fewer tasks running then we can schedule coarser. This helps
performance while still always keeping the latency target.

Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
include/linux/sched.h
kernel/sched.c
kernel/sched_fair.c
kernel/sysctl.c