Sorry for spamming, clarify two things.
On Mon, Dec 12, 2016 at 03:07:47PM +0800, Leo Yan wrote: [...]
Case 1: one ramp up task from duty cycle 10% to 90%, every step increases 10% [1];
Please see analysis result in [5]: The line with Magenta color: LITTLE cluster sched domain flag The line with Yellow color: Big cluster sched domain flag The line with Red color: Root domain flag
Case 2: 4 middle workload tasks (util_avg ~= 300 < LITTLE core's capacity 447 * 0.8 = 358); check if task can spread out in LITTLE cluster [2];
Though this error does not impact final conclusion, but should correct as LITTLE core's max capacity = 593; so 593 * 0.8 = 474.
[...]
For LITTLE cluster "overutilized" flag, it only works after whole system is "overutilized". This is for 6 big tasks case, but for 4 middle tasks case, LITTLE cluster "overutilized" flag doesn't set; so if there have several tasks on LITTLE cluster, we cannot rely on LITTLE cluster "overutilized" flag to spread tasks within LITTLE cluster [6].
I personally think this may not an issue, due we can reply on EAS core algorithm to select best CPU within cluster. So we doesn't rely on "overutilized" flag to spread tasks in LITTLE cluster. And after whole system is "overutilized", then we disable "EAS" path and use SMP traditional load balance. Agree?
Thanks, Leo Yan