[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <35c18eee-7e92-8a7d-c59d-11dfd2b053ff@arm.com>
Date: Tue, 28 Jan 2020 10:24:27 +0100
From: Dietmar Eggemann <dietmar.eggemann@....com>
To: Valentin Schneider <valentin.schneider@....com>,
linux-kernel@...r.kernel.org
Cc: mingo@...hat.com, peterz@...radead.org, vincent.guittot@...aro.org,
morten.rasmussen@....com, qperret@...gle.com,
adharmap@...eaurora.org
Subject: Re: [PATCH v3 0/3] sched/fair: Capacity aware wakeup rework
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.
Powered by blists - more mailing lists