EAS vs HMP kernels

wenkey

EAS: Energy Aware Scheduling

    It is an incremental update to the existing Linux power management system developed by the ARM tech giant where it places CPU power control directly under the Linux Scheduler.  As we all know that there are different types of CPUs based on the number of cores most frequently used ones are Octa-core and Quad-core CPUs. Based on the task load EAS selects CPU efficient core to get work done. Nowadays, each soc contains BIG and LITTLE cores, Big Cores are tweaked to high clock frequencies in order to achieve max performance and Little cores are power-efficient cores these are clocked with low Frequencies.



        EAS uses a Model of CPU energy consumption or simply called EM to optimize the task scheduling on the BIG or LITTLE cores or DynamiQ platforms while meeting compute requirements.EM gives the CPU topology to the scheduler and provides power cost information of tasks running on each core of the CPU at each available frequencies. EAS uses EM to reduce power costs and make decisions for minimum power consumption.

        Now, EAS uses a CPU freq governor called SCHEDULTIL which uses the scheduler's load-tracking metrics to decide upon frequency changes in CPU. In Android-3,18 onwards supports EAS in their kernel

        EAS runs CPU clock speeds according to load and this always takes analysis over past performance to power factor and schedules the CPU cores according to with the load, for example, its drains the heavy battery on gaming and off big cores while in the sleeping mode this reduces the night drain of battery.

         You can check the kernel is EAS or not by using the CASTRO app in play store

EAS is merged with Linux kernel v5.0 and above.


HMP: Heterogeneous Multi-Processing

        HMP is the most powerful use model of BIG.LITTLE architecture in which enables all physical cores at the same time. This is a standard load scheduler.In these threads with high priority is assigned to the BIG cores and threads with low priority are assigned to the LITTLE cores. There is no prediction in the HMP which is present in the EAS. It does not predict any EM(Energy Model) from the CPU. 

        Due to the above lack of prediction of CPU operational frequency of each core, it uses the same power cost to both heavy and light loads of task but it is safe when compared with EAS.

        HMP uses INTERACTIVE governor this is the most popular governor before the SCHEDULTIl. Interactive governor manages CPU and GPU frequencies of CPU by maintaining balance in between the performance and battery backup.

        BIG.LITTLE architecture works in 2 methods

            1)IKS - In Kernel Switcher

            2)GTS - Global Task Scheduling

        HMP is basically supported by extending DVFS(Dynamic Voltage and Frequency Scaling) and SMP load balancing. Both are fully aware of the performance of BIG cores are greater than the LITTLE core and priority scheduling, foreground task accordingly

        In DVFS the migration modes of big.LITTLE extends the concept by enabling the transition to big cores of CPU above the highest DVFS operating point of little cores. This Migration will take about 30 micros seconds.



        This Model is first implemented by Samsung Exynos octa series and Apple A11 series

CONCLUSION:

        EAS is better when compared with HMP. The main advantage of EAS is prediction of the energy model of CPU frequency of each core which makes to attain the power to the battery. whereas HMP always uses the same mode of power for all task scheduling. I recommend using EAS based custom ROMs instead of HMP ones already GOOGLE implemented EAS in their PIXEL PHONES including Chrome books.

                                          

Comments

Popular posts from this blog

AOSP VS CAF

How to unlock bootloader