sched: activate active load balancing in new idle cpus
authorVaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
Thu, 18 Dec 2008 17:56:36 +0000 (23:26 +0530)
committerIngo Molnar <mingo@elte.hu>
Fri, 19 Dec 2008 08:21:54 +0000 (09:21 +0100)
commitad273b32e482cdef306eac32b28d97f513a022f4
tree230ba0c2f8b594f4acefe5f5b219c650b7b0cb07
parent7eb52dfa70dbf5232b5b83ec4357e6bebaa8fde8
sched: activate active load balancing in new idle cpus

Impact: tweak task balancing to save power more agressively

Active load balancing is a process by which migration thread
is woken up on the target CPU in order to pull current
running task on another package into this newly idle
package.

This method is already in use with normal load_balance(),
this patch introduces this method to new idle cpus when
sched_mc is set to POWERSAVINGS_BALANCE_WAKEUP.

This logic provides effective consolidation of short running
daemon jobs in a almost idle system

The side effect of this patch may be ping-ponging of tasks
if the system is moderately utilised. May need to adjust the
iterations before triggering.

Signed-off-by: Vaidyanathan Srinivasan <svaidy@linux.vnet.ibm.com>
Acked-by: Balbir Singh <balbir@linux.vnet.ibm.com>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
kernel/sched.c