Re: [PATCH 3/3] ARM: exynos_defconfig: Enable Energy Model framework
From: Krzysztof Kozlowski
Date: Fri Jan 31 2020 - 08:16:52 EST
On Mon, 27 Jan 2020 at 22:55, <lukasz.luba@xxxxxxx> wrote:
>
> From: Lukasz Luba <lukasz.luba@xxxxxxx>
>
> Enable the Energy Model (EM) brings possibility to use Energy Aware
> Scheduler (EAS). This compiles the EM but does not enable to run EAS in
> default. The EAS only works with SchedUtil - a CPUFreq governor which
> handles direct requests from the scheduler for the frequency change. Thus,
> to make EAS working in default, the SchedUtil governor should be
> configured as default CPUFreq governor.
Full stop. That's enough of needed explanation of schedutil.
> Although, the EAS might be enabled
> in runtime, when the EM is present for CPUs, the SchedUtil is compiled and
> then set as CPUFreq governor, i.e.:
>
> echo schedutil > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor
> echo schedutil > /sys/devices/system/cpu/cpu4/cpufreq/scaling_governor
>
> To check if EAS is ready to work, the read output from the command below
> should show '1':
> cat /proc/sys/kernel/sched_energy_aware
>
> To disable EAS in runtime simply 'echo 0' to the file above.
Not related to this commit. If you were implemeting here
schedutil/EAS, then it makes sense to post all this. However what's
the point to describe it in every defconfig change?
> Some test results, which stress the scheduler on Odroid-XU3:
> hackbench -l 500 -s 4096
> With mainline code and with this patch set.
Skip the last sentence - duplicated information.
>
> The tests have been made with and without CONFIG_PROVE_LOCKING (PL)
> (which is set to =y in default exynos_defconfig)
>
> | this patch set | mainline
The commit will be applied on its own branch so the meaning of "this
patch set" will be lost. Maybe just "before/after"?
> |-----------------------------------------------|---------------
> | performance | SchedUtil | SchedUtil | performance
> | governor | governor | governor | governor
> | | w/o EAS | w/ EAS |
> ----------------|---------------|---------------|---------------|---------------
> hackbench w/ PL | 12.7s | 11.7s | 12.0s | 13.0s - 12.2s
> hackbench w/o PL| 9.2s | 8.1s | 8.2s | 9.2s - 8.4s
Why does the performance different before and after this patch?
Mention - lower better (?). Space between number and unit... or better
mention [s] in column title.
And last but not least:
Why this patch is separate from 1/3? I don't get the need of splitting them.
Best regards,
Krzysztof