Messages in this thread | | | Subject | Re: [PATCH v3 0/3] sched/fair: Capacity aware wakeup rework | From | Dietmar Eggemann <> | Date | Tue, 28 Jan 2020 10:24:27 +0100 |
| |
On 26/01/2020 21:09, Valentin Schneider wrote:
[...]
> v2 -> v3 > -------- > o Added missing sync_entity_load_avg() (Quentin) > o Added fallback CPU selection (maximize capacity) > o Added special case for CPU hogs: task_fits_capacity() will always return 'false' > for tasks that are simply too big, due to the margin.
v3 fixes the Geekbench multicore regression I saw on Pixel4 (Android 10, Android Common Kernel v4.14 based, Snapdragon 855) running v1.
I changed the Pixel4 kernel a bit (PELT instead WALT, mainline select_idle_sibling() instead the csctate aware one), mainline task_fits_capacity()) for base, v1 & v3.
Since it's not mainline kernel the results have to be taken with a pinch of salt but they probably show that the new condition:
if (rq->cpu_capacity_orig == READ_ONCE(rq->rd->max_cpu_capacity) && ... return cpu;
has an effect when dealing with tasks with util_est values > 0.8 * 1024.
| |