[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <ce51e025-edd5-fdfa-9e2a-9270cacf8660@arm.com>
Date: Fri, 31 Jan 2020 17:38:09 +0000
From: Lukasz Luba <lukasz.luba@....com>
To: Bartlomiej Zolnierkiewicz <b.zolnierkie@...sung.com>
Cc: kgene@...nel.org, krzk@...nel.org,
linux-arm-kernel@...ts.infradead.org,
linux-samsung-soc@...r.kernel.org, linux-kernel@...r.kernel.org,
devicetree@...r.kernel.org, linux-pm@...r.kernel.org,
myungjoo.ham@...sung.com, kyungmin.park@...sung.com,
cw00.choi@...sung.com, robh+dt@...nel.org, mark.rutland@....com,
dietmar.eggemann@....com
Subject: Re: [PATCH 3/3] ARM: exynos_defconfig: Enable Energy Model framework
Hi Bartek,
On 1/31/20 1:30 PM, Bartlomiej Zolnierkiewicz wrote:
>
> Hi,
>
> On 1/27/20 10:54 PM, lukasz.luba@....com wrote:
>> From: Lukasz Luba <lukasz.luba@....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.4s
>
> Would 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"?
I need to check if this xu3 ina2xx can aggregate energy or
it's only drained-current-at-that-moment value.
Regards,
Lukasz
>
> Best regards,
> --
> Bartlomiej Zolnierkiewicz
> Samsung R&D Institute Poland
> Samsung Electronics
>
>> Signed-off-by: Lukasz Luba <lukasz.luba@....com>
>> ---
>> arch/arm/configs/exynos_defconfig | 1 +
>> 1 file changed, 1 insertion(+)
>>
>> diff --git a/arch/arm/configs/exynos_defconfig b/arch/arm/configs/exynos_defconfig
>> index 1db857056992..c0f8ecabc607 100644
>> --- a/arch/arm/configs/exynos_defconfig
>> +++ b/arch/arm/configs/exynos_defconfig
>> @@ -18,6 +18,7 @@ CONFIG_ZBOOT_ROM_BSS=0x0
>> CONFIG_ARM_APPENDED_DTB=y
>> CONFIG_ARM_ATAG_DTB_COMPAT=y
>> CONFIG_CMDLINE="root=/dev/ram0 rw ramdisk=8192 initrd=0x41000000,8M console=ttySAC1,115200 init=/linuxrc mem=256M"
>> +CONFIG_ENERGY_MODEL=y
>> CONFIG_CPU_FREQ=y
>> CONFIG_CPU_FREQ_STAT=y
>> CONFIG_CPU_FREQ_DEFAULT_GOV_ONDEMAND=y
Powered by blists - more mailing lists