Re: sched: Question about big and little cores system with SMP and EAS

From: Dietmar Eggemann
Date: Wed Jun 16 2021 - 09:20:37 EST


- Quentin Perret <quentin.perret@xxxxxxx>
+ Quentin Perret <qperret@xxxxxxxxxx>

On 16/06/2021 13:39, Peter Zijlstra wrote:
> On Wed, Jun 16, 2021 at 07:29:26PM +0800, Ley Foon Tan wrote:
>> Hi all
>>
>> Would like to ask the experts here regarding the Symmetric
>> Multi-Processing mode (SMP) with Energy aware scheduler (EAS) support
>> on the big + little cores system.
>
> And the you ask a question unrelated to either Symmetric MP or EAS :-)
>
>> Hardware system:
>> Big and little cores have almost the same ISA, but the big core has
>> some extension instructions that little core doesn't have.
>
> That problem is unrelated to big.Little / EAS, also by definition that
> is not SMP seeing how the 'S' is a blatant lie.
>
> The simplest solution is to simply disallow usage of the extended ISA
> and force mandate the common subset. The complicated answer is something
> along the lines of:
>
> https://lkml.kernel.org/r/20210608180313.11502-1-will@xxxxxxxxxx

We don't encourage asymmetric ISA extensions for EAS*/CAS** on
big.Little systems.
It would be simply a nightmare to schedule tasks on such systems.

The exception to this is the 'asymmetric 32-bit Soc' to support 32bit
legacy Apps. The nightmare for scheduling is reduced in this case to CPU
affinity, something the task scheduler has to live with already today.
(+ DL admission control for 32bit tasks).

* Documentation/scheduler/sched-energy.rst
** Documentation/scheduler/sched-capacity.rst