Re: [PATCH 3/3] ARM: exynos_defconfig: Enable Energy Model framework
From: Bartlomiej Zolnierkiewicz <hidden>
Date: 2020-01-31 13:47:37
Also in:
linux-devicetree, linux-pm, linux-samsung-soc, lkml
On 1/31/20 2:31 PM, Krzysztof Kozlowski wrote:
On Fri, 31 Jan 2020 at 14:30, Bartlomiej Zolnierkiewicz [off-list ref] wrote:quoted
Hi, On 1/27/20 10:54 PM, lukasz.luba@arm.com wrote:quoted
From: Lukasz Luba <lukasz.luba@arm.com> 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. 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. Some test results, which stress the scheduler on Odroid-XU3: hackbench -l 500 -s 4096 With mainline code and with this patch set. 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 |-----------------------------------------------|--------------- | 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.4sWould you happen to have measurements of how much power is saved by running hackbench using "SchedUtil governor w/ EAS" instead of "SchedUtil governor w/o EAS"?That's a good point and quite important reason behind enabling (or not) EAS...
IIUC EAS is enabled by default if you use SchedUtil governor and Energy Model is available on you platform. [ SchedUtil governor is enabled in exynos_defconfig although not enabled by default currently. ] Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics
Best regards, Krzysztof
_______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel