On Wed, Jul 04, 2018 at 11:17:38AM +0100, Morten Rasmussen wrote: > On asymmetric cpu capacity systems (e.g. Arm big.LITTLE) it is crucial > for performance that cpu intensive tasks are aggressively migrated to > high capacity cpus as soon as those become available. The capacity > awareness tweaks already in the wake-up path can't handle this as such > tasks might run or be runnable forever. If they happen to be placed on a > low capacity cpu from the beginning they are stuck there forever while > high capacity cpus may have become available in the meantime. > > To address this issue this patch set introduces a new "misfit" > load-balancing scenario in periodic/nohz/newly idle balance which tweaks > the load-balance conditions to ignore load per capacity in certain > cases. Since misfit tasks are commonly running alone on a cpu, more > aggressive active load-balancing is needed too. > > The fundamental idea of this patch set has been in Android kernels for a > long time and is absolutely essential for consistent performance on > asymmetric cpu capacity systems. > > The patches have been tested on: > 1. Arm Juno (r0): 2+4 Cortex A57/A53 > 2. Hikey960: 4+4 Cortex A73/A53 >
Thanks for posting these, we have been carrying it in the Android Common Kernel for some time. They have been useful for Android systems. Reviewed-by: Joel Fernandes (Google) <j...@joelfernandes.org> thanks, - Joel