eb92692 sched/fair: Speed-up energy-aware wake-ups
find_energy_efficient_cpu()
pack small task到一個cpu使其它cpu更容易進入deeper idle state,但是卻使cluster更難進入idle,find_energy_efficient_cpu基於cluster-packing,把task在cluster內分散,這樣可以降低調度延時,不會破壞同構cpu之間的耦合(cache),也是eas只作用於異構cpu的原因。
Forkees不會走eas wakeup的路徑,因爲新task還沒有util信息,不能預測其對功耗的影響。通過find_idlest_cpu放在負載最小的cpu上。還可以綁定task到指定的cpu上,或繼承parent task的util_avg,這些方式的弊端是,會影響其它用例(task的執行)。