Re: [PATCH v2] sched/cfs: make util/load_avg more stable

2017-04-25 Thread Dietmar Eggemann
On 25/04/17 13:40, Vincent Guittot wrote: > On 25 April 2017 at 13:05, Dietmar Eggemann wrote: >> On 19/04/17 17:54, Vincent Guittot wrote: >>> In the current implementation of load/util_avg, we assume that the ongoing >>> time segment has fully elapsed, and

Re: [PATCH V3 1/2] sched/fair: Fix load_balance() affinity redo path

2017-05-19 Thread Dietmar Eggemann
On 18/05/17 20:36, Jeffrey Hugo wrote: [...] > diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c > index d711093..a5d41b1 100644 > --- a/kernel/sched/fair.c > +++ b/kernel/sched/fair.c > @@ -8220,7 +8220,24 @@ static int load_balance(int this_cpu, struct rq > *this_rq, > /* Al

Re: [PATCH v2 02/10] cpufreq: provide data for frequency-invariant load-tracking support

2017-07-13 Thread Dietmar Eggemann
On 13/07/17 13:40, Sudeep Holla wrote: > > > On 11/07/17 16:21, Dietmar Eggemann wrote: >> On 11/07/17 07:39, Viresh Kumar wrote: >>> On 10-07-17, 14:46, Rafael J. Wysocki wrote: [...] >> Like I said in the other email, since for (future) >> arm/arm64 fas

Re: [PATCH v2 02/10] cpufreq: provide data for frequency-invariant load-tracking support

2017-07-10 Thread Dietmar Eggemann
On 10/07/17 10:42, Viresh Kumar wrote: > On 10-07-17, 11:30, Peter Zijlstra wrote: >> On Sat, Jul 08, 2017 at 02:09:37PM +0200, Rafael J. Wysocki wrote: >>> Anyway, if everyone agrees that doing it in the core is the way to go >>> (Peter?), >>> why don't you introduce a __weak function for setting

Re: [PATCH v2 02/10] cpufreq: provide data for frequency-invariant load-tracking support

2017-07-10 Thread Dietmar Eggemann
On 08/07/17 13:09, Rafael J. Wysocki wrote: > On Friday, July 07, 2017 06:06:30 PM Dietmar Eggemann wrote: >> On 07/07/17 17:18, Rafael J. Wysocki wrote: >>> On Fri, Jul 7, 2017 at 6:01 PM, Dietmar Eggemann >>> wrote: >>>> On 06/07/17 11:40, Viresh Kumar w

Re: [PATCH v2 04/10] arm: wire cpufreq input data for frequency-invariant accounting up to the arch

2017-07-10 Thread Dietmar Eggemann
On 06/07/17 11:42, Viresh Kumar wrote: > On 06-07-17, 10:49, Dietmar Eggemann wrote: >> Define arch_set_freq_scale to be the arch_topology "driver" function >> topology_set_freq_scale() to let FIE work correctly. >> >> Cc: Russell King >> Cc: Jur

Re: [PATCH v2 10/10] drivers base/arch_topology: inline cpu- and frequency-invariant accounting

2017-07-10 Thread Dietmar Eggemann
On 06/07/17 11:57, Viresh Kumar wrote: > Sure this patch looks pretty useful, but ... > > On 06-07-17, 10:49, Dietmar Eggemann wrote: >> diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c >> index 63fb3f945d21..b4481cff14bf 100644 >> --- a/d

Re: [PATCH v2 02/10] cpufreq: provide data for frequency-invariant load-tracking support

2017-07-11 Thread Dietmar Eggemann
On 11/07/17 07:01, Viresh Kumar wrote: > On 10-07-17, 13:02, Dietmar Eggemann wrote: >> Yes, I will change this. The #define approach is not really necessary >> here since we're not in the scheduler hot-path and inlining is not >> really required here. > > It wou

Re: [PATCH v2 02/10] cpufreq: provide data for frequency-invariant load-tracking support

2017-07-11 Thread Dietmar Eggemann
On 11/07/17 15:59, Rafael J. Wysocki wrote: > On Tuesday, July 11, 2017 04:06:01 PM Dietmar Eggemann wrote: >> On 11/07/17 07:01, Viresh Kumar wrote: >>> On 10-07-17, 13:02, Dietmar Eggemann wrote: >>>> Yes, I will change this. The #define approach is not really neces

Re: [PATCH v2 02/10] cpufreq: provide data for frequency-invariant load-tracking support

2017-07-11 Thread Dietmar Eggemann
On 11/07/17 07:39, Viresh Kumar wrote: > On 10-07-17, 14:46, Rafael J. Wysocki wrote: >> This particular change is about a new feature, so making it in the core is OK >> in two cases IMO: (a) when you actively want everyone to be affected by it >> and > > IMO this change should be done for the wh

[PATCH v2 02/10] cpufreq: provide data for frequency-invariant load-tracking support

2017-07-06 Thread Dietmar Eggemann
cpufreq_set_freq_scale() gets compiled out. Cc: Rafael J. Wysocki Cc: Viresh Kumar Signed-off-by: Dietmar Eggemann --- drivers/cpufreq/cpufreq.c | 26 ++ 1 file changed, 26 insertions(+) diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c index

[PATCH v2 01/10] drivers base/arch_topology: free cpumask cpus_to_visit

2017-07-06 Thread Dietmar Eggemann
: Vincent Guittot Signed-off-by: Dietmar Eggemann Acked-by: Vincent Guittot Tested-by: Juri Lelli Reviewed-by: Juri Lelli --- drivers/base/arch_topology.c | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c

[PATCH v2 04/10] arm: wire cpufreq input data for frequency-invariant accounting up to the arch

2017-07-06 Thread Dietmar Eggemann
Define arch_set_freq_scale to be the arch_topology "driver" function topology_set_freq_scale() to let FIE work correctly. Cc: Russell King Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- arch/arm/include/asm/topology.h | 5 + arch/arm/kernel/topology.c | 1 - 2 files

[PATCH v2 05/10] arm: wire frequency-invariant accounting support up to the task scheduler

2017-07-06 Thread Dietmar Eggemann
river" function topology_get_freq_scale() for the task scheduler's frequency-invariant accounting instead of the default arch_scale_freq_capacity() in kernel/sched/sched.h. Cc: Russell King Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Vincent Guittot Tested-by: Juri Lelli Reviewed-

[PATCH v2 10/10] drivers base/arch_topology: inline cpu- and frequency-invariant accounting

2017-07-06 Thread Dietmar Eggemann
293840 120 253.2 840 120 299.6 1060 140 Cc: Greg Kroah-Hartman Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- drivers/base/arch_topology.c | 14 ++ include/linux/arch_topology.h | 15 +-- 2 files changed, 15 insertions(+), 14 deletions(-) d

[PATCH v2 06/10] arm: wire cpu-invariant accounting support up to the task scheduler

2017-07-06 Thread Dietmar Eggemann
to use the arch_topology "driver" function topology_get_cpu_scale() for the task scheduler's cpu-invariant accounting instead of the default arch_scale_cpu_capacity() in kernel/sched/sched.h. Cc: Russell King Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Vincent Guittot Tested-by

[PATCH v2 09/10] arm64: wire cpu-invariant accounting support up to the task scheduler

2017-07-06 Thread Dietmar Eggemann
to use the arch_topology "driver" function topology_get_cpu_scale() for the task scheduler's cpu-invariant accounting instead of the default arch_scale_cpu_capacity() in kernel/sched/sched.h. Cc: Catalin Marinas Cc: Will Deacon Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by:

[PATCH v2 08/10] arm64: wire frequency-invariant accounting support up to the task scheduler

2017-07-06 Thread Dietmar Eggemann
river" function topology_get_freq_scale() for the task scheduler's frequency-invariant accounting instead of the default arch_scale_freq_capacity() in kernel/sched/sched.h. Cc: Catalin Marinas Cc: Will Deacon Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Catalin Marinas Acked-by: V

[PATCH v2 07/10] arm64: wire cpufreq input data for frequency-invariant accounting up to the arch

2017-07-06 Thread Dietmar Eggemann
Define arch_set_freq_scale to be the arch_topology "driver" function topology_set_freq_scale() to let FIE work correctly. Cc: Catalin Marinas Cc: Will Deacon Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- arch/arm64/include/asm/topology.h | 5 + arch/arm64/kernel/topology.

[PATCH v2 00/10] arm, arm64: frequency- and cpu-invariant accounting support for task scheduler

2017-07-06 Thread Dietmar Eggemann
https://marc.info/?l=linux-kernel&m=149625018223002&w=2 Dietmar Eggemann (10): drivers base/arch_topology: free cpumask cpus_to_visit cpufreq: provide data for frequency-invariant load-tracking support drivers base/arch_topology: frequency-invariant load-tracking support arm: wire

[PATCH v2 03/10] drivers base/arch_topology: frequency-invariant load-tracking support

2017-07-06 Thread Dietmar Eggemann
e task scheduler. Cc: Greg Kroah-Hartman Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- drivers/base/arch_topology.c | 20 include/linux/arch_topology.h | 7 +++ 2 files changed, 27 insertions(+) diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topo

Re: [PATCH v2 01/10] drivers base/arch_topology: free cpumask cpus_to_visit

2017-07-07 Thread Dietmar Eggemann
On 06/07/17 12:15, Viresh Kumar wrote: > On 06-07-17, 11:59, Juri Lelli wrote: >> On 06/07/17 15:52, Viresh Kumar wrote: [...] >> >> If that's the case I'm wondering however if we need explicit >> synchronization though. Otherwise both threads can read the mask as >> full, clear only their bits a

Re: [PATCH v2 02/10] cpufreq: provide data for frequency-invariant load-tracking support

2017-07-07 Thread Dietmar Eggemann
On 06/07/17 11:40, Viresh Kumar wrote: > On 06-07-17, 10:49, Dietmar Eggemann wrote: [...] >> In case arch_set_freq_scale() is not defined (and because of the >> pr_debug() drivers/cpufreq/cpufreq.c is not compiled with -DDEBUG) > > The line within () needs to be impro

Re: [PATCH v2 03/10] drivers base/arch_topology: frequency-invariant load-tracking support

2017-07-07 Thread Dietmar Eggemann
On 06/07/17 11:45, Viresh Kumar wrote: > On 06-07-17, 10:49, Dietmar Eggemann wrote: [...] >> diff --git a/include/linux/arch_topology.h b/include/linux/arch_topology.h >> index 9af3c174c03a..168104d2d2cf 100644 >> --- a/include/linux/arch_topology.h >> +++ b/in

Re: [PATCH v2 02/10] cpufreq: provide data for frequency-invariant load-tracking support

2017-07-07 Thread Dietmar Eggemann
On 07/07/17 17:18, Rafael J. Wysocki wrote: > On Fri, Jul 7, 2017 at 6:01 PM, Dietmar Eggemann > wrote: >> On 06/07/17 11:40, Viresh Kumar wrote: >>> On 06-07-17, 10:49, Dietmar Eggemann wrote: [...] >> So what about I call arch_set_freq_scale() in __cpufreq_not

Re: [PATCH V6] sched/fair: Remove group imbalance from calculate_imbalance()

2017-07-18 Thread Dietmar Eggemann
f is a nop. I wonder if it is fair to say that your fix helps multi-cluster (especially with n > 2) systems without SMT and with your first patch [1] for this specific, cpu affinity restricted test cases. > Co-authored-by: Austin Christ > Signed-off-by: Jeffrey Hugo > Tested-by: Tyl

Re: [RESEND PATCH] sched/fair: consider RT/IRQ pressure in select_idle_sibling

2018-02-14 Thread Dietmar Eggemann
On 02/09/2018 11:05 PM, Rohit Jain wrote: On 02/09/2018 07:46 AM, Dietmar Eggemann wrote: On 02/09/2018 01:53 PM, Peter Zijlstra wrote: On Mon, Jan 29, 2018 at 03:27:09PM -0800, Rohit Jain wrote: [...] @@ -6173,8 +6183,15 @@ static int select_idle_cpu(struct task_struct *p, struct

Re: [RESEND PATCH] sched/fair: consider RT/IRQ pressure in select_idle_sibling

2018-02-09 Thread Dietmar Eggemann
On 02/09/2018 01:53 PM, Peter Zijlstra wrote: On Mon, Jan 29, 2018 at 03:27:09PM -0800, Rohit Jain wrote: [...] @@ -6173,8 +6183,15 @@ static int select_idle_cpu(struct task_struct *p, struct sched_domain *sd, int t return -1; if (!cpumask_test_cpu(cpu

Re: [PATCH] cpufreq: scpi: invoke frequency-invariance setter function

2018-02-25 Thread Dietmar Eggemann
On 02/22/2018 11:27 PM, Rafael J. Wysocki wrote: > On Tue, Feb 20, 2018 at 12:10 PM, Dietmar Eggemann > wrote: [...] >> Fixes: 343a8d17fa8d ("cpufreq: scpi: remove arm_big_little dependency") >> Cc: Rafael J. Wysocki >> Cc: Viresh Kumar >> Cc: Sudeep H

[PATCH] cpufreq: scpi: invoke frequency-invariance setter function

2018-02-20 Thread Dietmar Eggemann
Wysocki Cc: Viresh Kumar Cc: Sudeep Holla Signed-off-by: Dietmar Eggemann Acked-by: Sudeep Holla --- drivers/cpufreq/scpi-cpufreq.c | 12 +--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/drivers/cpufreq/scpi-cpufreq.c b/drivers/cpufreq/scpi-cpufreq.c index c32a83

[PATCH v2] cpufreq: scpi: invoke frequency-invariance setter function

2018-02-26 Thread Dietmar Eggemann
Wysocki Cc: Viresh Kumar Cc: Sudeep Holla Signed-off-by: Dietmar Eggemann Acked-by: Sudeep Holla Acked-by: Viresh Kumar --- drivers/cpufreq/scpi-cpufreq.c | 16 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/drivers/cpufreq/scpi-cpufreq.c b/drivers/cpufreq/

Re: [PATCH] Revert "base: arch_topology: fix section mismatch build warnings"

2018-02-07 Thread Dietmar Eggemann
cause init_cpu_capacity_callback lacks a __init annotation or the annotation of $x is wrong. Signed-off-by: Gaku Inami Reviewed-by: Dietmar Eggemann Tested-by: Dietmar Eggemann This also helps with cpufreq driver module loading. W/o this revert I get the following when trying to modprobe scpi-c

Re: [PATCH v2 2/2] sched/fair: Update blocked load from newly idle balance

2017-12-21 Thread Dietmar Eggemann
On 12/20/2017 03:22 PM, Peter Zijlstra wrote: On Fri, Dec 01, 2017 at 06:01:57PM +, Brendan Jackman wrote: @@ -7913,6 +7928,29 @@ static inline void update_sd_lb_stats(struct lb_env *env, struct sd_lb_stats *sd if (child && child->flags & SD_PREFER_SIBLING) prefer_si

[PATCH 1/4] arm: topology: remove cpu_efficiency

2017-08-30 Thread Dietmar Eggemann
big.LITTLE system no matter which core types it consists of. Cc: Russell King Cc: Vincent Guittot Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- arch/arm/kernel/topology.c | 113 ++--- 1 file changed, 3 insertions(+), 110 deletions(-) diff --g

[PATCH 4/4] arm: dts: r8a7790: add cpu capacity-dmips-mhz information

2017-08-30 Thread Dietmar Eggemann
ected once cpu-invariant accounting support is re-connected to the task scheduler: r8a7790-lager Cc: Rob Herring Cc: Mark Rutland Cc: Russell King Signed-off-by: Dietmar Eggemann --- arch/arm/boot/dts/r8a7790.dtsi | 8 1 file changed, 8 insertions(+) diff --git a/arch/arm/boot/dts/r8a7

[PATCH 3/4] arm: dts: exynos: add exynos5422 cpu capacity-dmips-mhz information

2017-08-30 Thread Dietmar Eggemann
ected once cpu-invariant accounting support is re-connected to the task scheduler: odroidxu3, odroidxu3-lite, odroidxu4 Cc: Rob Herring Cc: Mark Rutland Cc: Russell King Cc: Kukjin Kim Cc: Krzysztof Kozlowski Signed-off-by: Dietmar Eggemann --- arch/arm/boot/dts/exynos5422-cpus.dtsi | 8 +++

[PATCH 2/4] arm: dts: exynos: add exynos5420 cpu capacity-dmips-mhz information

2017-08-30 Thread Dietmar Eggemann
ystem runs cpu-bound or memory-bound has an impact on the cpu capacity values derived from these benchmark results. Cc: Rob Herring Cc: Mark Rutland Cc: Russell King Cc: Kukjin Kim Cc: Krzysztof Kozlowski Signed-off-by: Dietmar Eggemann --- arch/arm/boot/dts/exynos5420-cpus.dtsi | 8 1 fil

[PATCH 0/4] arm: remove cpu_efficiency

2017-08-30 Thread Dietmar Eggemann
e task scheduler uses the default implementation in kernel/sched/sched.h. This will change as soon the patch "arm: wire cpu-invariant accounting support up to the task scheduler" [1] is in mainline. This patch-set has been tested on TC2 and Samsung Chromebook 2 13" (peach-pi, Exyn

Re: [PATCH 2/4] arm: dts: exynos: add exynos5420 cpu capacity-dmips-mhz information

2017-08-31 Thread Dietmar Eggemann
On 30/08/17 21:26, Krzysztof Kozlowski wrote: > On Wed, Aug 30, 2017 at 03:41:18PM +0100, Dietmar Eggemann wrote: >> The following 'capacity-dmips-mhz' dt property values are used: >> >> Cortex-A15: 1024, Cortex-A7: 539 >> >> They have been derived from

Re: [PATCH v4 00/10] arm, arm64, cpufreq: frequency- and cpu-invariant accounting support for task scheduler

2017-08-31 Thread Dietmar Eggemann
Hi Raphael, On 31/08/17 00:34, Rafael J. Wysocki wrote: > On Friday, August 25, 2017 4:31:56 PM CEST Dietmar Eggemann wrote: [...] >> [1] https://marc.info/?l=linux-kernel&m=149625018223002&w=2 >> [2] https://marc.info/?l=linux-kernel&m=150118402232039&w=2 >>

[PATCH v4 00/10] arm, arm64, cpufreq: frequency- and cpu-invariant accounting support for task scheduler

2017-08-25 Thread Dietmar Eggemann
nel&m=149625018223002&w=2 [2] https://marc.info/?l=linux-kernel&m=150118402232039&w=2 [3] https://marc.info/?l=linux-pm&m=149933474313566&w=2 [4] http://arminfo.emea.arm.com/help/topic/com.arm.doc.den0056a/DEN0056A_System_Control_and_Management_Interface.pdf [5] https

[PATCH v4 09/10] arm64: wire frequency-invariant accounting support up to the task scheduler

2017-08-25 Thread Dietmar Eggemann
river" function topology_get_freq_scale() for the task scheduler's frequency-invariant accounting instead of the default arch_scale_freq_capacity() in kernel/sched/sched.h. Cc: Catalin Marinas Cc: Will Deacon Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Catalin Marinas Acked-by: V

[PATCH v4 04/10] cpufreq: dt: invoke frequency-invariance setter function

2017-08-25 Thread Dietmar Eggemann
Call the frequency-invariance setter function arch_set_freq_scale() if the new frequency has been successfully set which is indicated by dev_pm_opp_set_rate() returning 0. Cc: Rafael J. Wysocki Cc: Viresh Kumar Signed-off-by: Dietmar Eggemann Acked-by: Viresh Kumar --- drivers/cpufreq

[PATCH v4 10/10] arm64: wire cpu-invariant accounting support up to the task scheduler

2017-08-25 Thread Dietmar Eggemann
to use the arch_topology "driver" function topology_get_cpu_scale() for the task scheduler's cpu-invariant accounting instead of the default arch_scale_cpu_capacity() in kernel/sched/sched.h. Cc: Catalin Marinas Cc: Will Deacon Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by:

[PATCH v4 08/10] arm: wire cpu-invariant accounting support up to the task scheduler

2017-08-25 Thread Dietmar Eggemann
to use the arch_topology "driver" function topology_get_cpu_scale() for the task scheduler's cpu-invariant accounting instead of the default arch_scale_cpu_capacity() in kernel/sched/sched.h. Cc: Russell King Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Vincent Guittot Acked-by

[PATCH v4 06/10] drivers base/arch_topology: allow inlining cpu-invariant accounting support

2017-08-25 Thread Dietmar Eggemann
Allow inlining of topology_get_cpu_scale() into the task scheduler fast path (e.g. __update_load_avg_se()) by coding it as a static inline function in the arch topology header file. Cc: Greg Kroah-Hartman Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Viresh Kumar --- drivers/base

[PATCH v4 07/10] arm: wire frequency-invariant accounting support up to the task scheduler

2017-08-25 Thread Dietmar Eggemann
river" function topology_get_freq_scale() for the task scheduler's frequency-invariant accounting instead of the default arch_scale_freq_capacity() in kernel/sched/sched.h. Cc: Russell King Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Vincent Guittot Acked-by: Russell King Tested-by

[PATCH v4 02/10] cpufreq: provide default frequency-invariance setter function

2017-08-25 Thread Dietmar Eggemann
, the (new) current frequency and the maximum supported frequency. Cc: Rafael J. Wysocki Cc: Viresh Kumar Signed-off-by: Dietmar Eggemann --- drivers/cpufreq/cpufreq.c | 6 ++ include/linux/cpufreq.h | 3 +++ 2 files changed, 9 insertions(+) diff --git a/drivers/cpufreq/cpufreq.c b/dr

[PATCH v4 05/10] drivers base/arch_topology: provide frequency-invariant accounting support

2017-08-25 Thread Dietmar Eggemann
Kroah-Hartman Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Viresh Kumar --- drivers/base/arch_topology.c | 14 ++ include/linux/arch_topology.h | 10 ++ 2 files changed, 24 insertions(+) diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c

[PATCH v4 03/10] cpufreq: arm_big_little: invoke frequency-invariance setter function

2017-08-25 Thread Dietmar Eggemann
Call the frequency-invariance setter function arch_set_freq_scale() if the new frequency has been successfully set which is indicated by bL_cpufreq_set_rate() returning 0. Cc: Rafael J. Wysocki Cc: Viresh Kumar Cc: Sudeep Holla Signed-off-by: Dietmar Eggemann Acked-by: Viresh Kumar

[PATCH v4 01/10] drivers base/arch_topology: free cpumask cpus_to_visit

2017-08-25 Thread Dietmar Eggemann
: Vincent Guittot Signed-off-by: Dietmar Eggemann Acked-by: Vincent Guittot Acked-by: Viresh Kumar Tested-by: Juri Lelli Reviewed-by: Juri Lelli --- drivers/base/arch_topology.c | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/base/arch_topology.c b/drivers

Re: [PATCH 1/4] arm: topology: remove cpu_efficiency

2017-09-06 Thread Dietmar Eggemann
Hi Vincent, On 04/09/17 08:49, Vincent Guittot wrote: > Hi Dietmar, > > Removing cpu effificiency table looks good to me. Nevertheless, i have > some comments below for this patch. Thanks for the review! > On 30 August 2017 at 16:41, Dietmar Eggemann wrote: >> Remove the

Re: [PATCH 2/4] arm: dts: exynos: add exynos5420 cpu capacity-dmips-mhz information

2017-09-06 Thread Dietmar Eggemann
On 03/09/17 20:56, Krzysztof Kozlowski wrote: > On Thu, Aug 31, 2017 at 11:36:07AM +0100, Dietmar Eggemann wrote: >> On 30/08/17 21:26, Krzysztof Kozlowski wrote: >>> On Wed, Aug 30, 2017 at 03:41:18PM +0100, Dietmar Eggemann wrote: [...] >>>> The patch has been tes

Re: [PATCH 1/4] arm: topology: remove cpu_efficiency

2017-09-07 Thread Dietmar Eggemann
On 06/09/17 13:40, Vincent Guittot wrote: > On 6 September 2017 at 13:43, Dietmar Eggemann > wrote: >> Hi Vincent, >> >> On 04/09/17 08:49, Vincent Guittot wrote: >>> Hi Dietmar, >>> >>> Removing cpu effificiency table looks good to me. Neverthe

Re: [PATCH v4 00/10] arm, arm64, cpufreq: frequency- and cpu-invariant accounting support for task scheduler

2017-09-07 Thread Dietmar Eggemann
Hi Rafael, On 31/08/17 12:27, Dietmar Eggemann wrote: > Hi Raphael, > > On 31/08/17 00:34, Rafael J. Wysocki wrote: >> On Friday, August 25, 2017 4:31:56 PM CEST Dietmar Eggemann wrote: > > [...] > >>> [1] https://marc.info/?l=linux-kernel&m=14962501822

Re: [PATCH 2/6] drivers base/arch_topology: frequency-invariant load-tracking support

2017-06-26 Thread Dietmar Eggemann
On 08/06/17 08:55, Dietmar Eggemann wrote: > Implements an arch-specific frequency-scaling function > topology_get_freq_scale() which provides the following frequency > scaling factor: > > current_freq(cpu) << SCHED_CAPACITY_SHIFT / max_supported_freq(cpu) [...] Freque

Re: [RFC 1/2] sched/fair: Fix load_balance() affinity redo path

2017-05-15 Thread Dietmar Eggemann
On 12/05/17 21:57, Jeffrey Hugo wrote: > On 5/12/2017 2:47 PM, Peter Zijlstra wrote: >> On Fri, May 12, 2017 at 11:01:37AM -0600, Jeffrey Hugo wrote: >>> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c >>> index d711093..8f783ba 100644 >>> --- a/kernel/sched/fair.c >>> +++ b/kernel/sched/fai

Re: [PATCH V3 1/2] sched/fair: Fix load_balance() affinity redo path

2017-05-22 Thread Dietmar Eggemann
On 19/05/17 14:31, Dietmar Eggemann wrote: > On 18/05/17 20:36, Jeffrey Hugo wrote: > > [...] > >> diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c >> index d711093..a5d41b1 100644 >> --- a/kernel/sched/fair.c >> +++ b/kernel/sched/fair.c >> @@ -

Re: [PATCH V3 1/2] sched/fair: Fix load_balance() affinity redo path

2017-05-23 Thread Dietmar Eggemann
Hey Austin, On 22/05/17 20:57, Christ, Austin wrote: > Hey Dietmar, > > > On 5/22/2017 3:48 AM, Dietmar Eggemann wrote: >> On 19/05/17 14:31, Dietmar Eggemann wrote: >>> On 18/05/17 20:36, Jeffrey Hugo wrote: >>> >>> [...] >>> >&

Re: [PATCH v2 1/2] sched/fair: Fix how load gets propagated from cfs_rq to its sched_entity

2017-05-04 Thread Dietmar Eggemann
On 04/05/17 07:21, Peter Zijlstra wrote: > On Thu, May 04, 2017 at 07:51:29AM +0200, Peter Zijlstra wrote: > >> Urgh, and my numbers were so pretty :/ > > Just to clarify on how to run schbench, I limited to a single socket (as > that is what you have) and set -t to the number of cores in the soc

Re: [PATCH v2 1/2] sched/fair: Fix how load gets propagated from cfs_rq to its sched_entity

2017-05-05 Thread Dietmar Eggemann
Hi Tejun, On 04/05/17 18:39, Tejun Heo wrote: > Hello, Dietmar. > > On Thu, May 04, 2017 at 10:49:51AM +0100, Dietmar Eggemann wrote: >> On 04/05/17 07:21, Peter Zijlstra wrote: >>> On Thu, May 04, 2017 at 07:51:29AM +0200, Peter Zijlstra wrote: [...] >> &g

Re: [PATCH 2/3] sched/fair: Add load_weight->runnable_load_{sum|avg}

2017-05-05 Thread Dietmar Eggemann
Hi Tejun, On 04/05/17 21:29, Tejun Heo wrote: > Currently, runnable_load_avg, which represents the portion of load avg > only from tasks which are currently active, is tracked by cfs_rq but > not by sched_entity. We want to propagate runnable_load_avg of a > nested cfs_rq without affecting load_a

Re: [PATCH 2/3] sched/fair: Add load_weight->runnable_load_{sum|avg}

2017-05-05 Thread Dietmar Eggemann
On 05/05/17 14:26, Tejun Heo wrote: > On Fri, May 05, 2017 at 02:22:05PM +0100, Dietmar Eggemann wrote: >> Hi Tejun, >> [...] > > The patches are on top of v4.11 as noted in the head message. Sorry, haven't seen it. Will use v4.11 instead. [...]

Re: [PATCH 2/6] drivers base/arch_topology: frequency-invariant load-tracking support

2017-06-14 Thread Dietmar Eggemann
On 06/12/2017 04:27 PM, Vincent Guittot wrote: > On 8 June 2017 at 09:55, Dietmar Eggemann wrote: Hi Vincent, Thanks for the review! [...] >> @@ -225,8 +265,14 @@ static int __init register_cpufreq_notifier(void) >> >> cpumask_copy(cpus_to_vis

Re: [PATCH v2] sched/fair: update scale invariance of PELT

2017-04-28 Thread Dietmar Eggemann
On 28/04/17 16:52, Morten Rasmussen wrote: > Hi Vincent, [...] > As mentioned above, waiting time, i.e. !running && weight, is not > scaled, which causes trouble for load. I ran some rt-app-based tests on a system with frequency and cpu invariance. (1) Two periodic 20% tasks with 12ms period on

Re: [PATCH -v2 15/18] sched/fair: Align PELT windows between cfs_rq and its se

2017-10-04 Thread Dietmar Eggemann
On 01/09/17 14:21, Peter Zijlstra wrote: > The PELT _sum values are a saw-tooth function, dropping on the decay > edge and then growing back up again during the window. > > When these window-edges are not aligned between cfs_rq and se, we can > have the situation where, for example, on dequeue, th

[PATCH v5 00/10] arm, arm64, cpufreq: frequency- and cpu-invariant accounting support for task scheduler

2017-09-26 Thread Dietmar Eggemann
rnel&m=150118402232039&w=2 [4] https://marc.info/?l=linux-pm&m=149933474313566&w=2 [5] http://arminfo.emea.arm.com/help/topic/com.arm.doc.den0056a/DEN0056A_System_Control_and_Management_Interface.pdf [6] https://marc.info/?l=linux-kernel&m=149690865010019&w=2 Dietmar Eggemann (10): dr

[PATCH v5 01/10] drivers base/arch_topology: free cpumask cpus_to_visit

2017-09-26 Thread Dietmar Eggemann
: Vincent Guittot Signed-off-by: Dietmar Eggemann Acked-by: Vincent Guittot Acked-by: Viresh Kumar Tested-by: Juri Lelli Reviewed-by: Juri Lelli --- drivers/base/arch_topology.c | 12 ++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/drivers/base/arch_topology.c b/drivers

[PATCH v5 02/10] cpufreq: provide default frequency-invariance setter function

2017-09-26 Thread Dietmar Eggemann
, the (new) current frequency and the maximum supported frequency. Cc: Rafael J. Wysocki Cc: Viresh Kumar Signed-off-by: Dietmar Eggemann Acked-by: Rafael J. Wysocki Acked-by: Viresh Kumar --- drivers/cpufreq/cpufreq.c | 6 ++ include/linux/cpufreq.h | 3 +++ 2 files changed, 9 inser

[PATCH v5 04/10] cpufreq: dt: invoke frequency-invariance setter function

2017-09-26 Thread Dietmar Eggemann
Call the frequency-invariance setter function arch_set_freq_scale() if the new frequency has been successfully set which is indicated by dev_pm_opp_set_rate() returning 0. Cc: Rafael J. Wysocki Cc: Viresh Kumar Signed-off-by: Dietmar Eggemann Acked-by: Viresh Kumar --- drivers/cpufreq

[PATCH v5 06/10] drivers base/arch_topology: allow inlining cpu-invariant accounting support

2017-09-26 Thread Dietmar Eggemann
Allow inlining of topology_get_cpu_scale() into the task scheduler fast path (e.g. __update_load_avg_se()) by coding it as a static inline function in the arch topology header file. Cc: Greg Kroah-Hartman Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Viresh Kumar --- drivers/base

[PATCH v5 09/10] arm64: wire frequency-invariant accounting support up to the task scheduler

2017-09-26 Thread Dietmar Eggemann
river" function topology_get_freq_scale() for the task scheduler's frequency-invariant accounting instead of the default arch_scale_freq_capacity() in kernel/sched/sched.h. Cc: Catalin Marinas Cc: Will Deacon Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Catalin Marinas Acked-by: V

[PATCH v5 10/10] arm64: wire cpu-invariant accounting support up to the task scheduler

2017-09-26 Thread Dietmar Eggemann
to use the arch_topology "driver" function topology_get_cpu_scale() for the task scheduler's cpu-invariant accounting instead of the default arch_scale_cpu_capacity() in kernel/sched/sched.h. Cc: Catalin Marinas Cc: Will Deacon Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by:

[PATCH v5 08/10] arm: wire cpu-invariant accounting support up to the task scheduler

2017-09-26 Thread Dietmar Eggemann
to use the arch_topology "driver" function topology_get_cpu_scale() for the task scheduler's cpu-invariant accounting instead of the default arch_scale_cpu_capacity() in kernel/sched/sched.h. Cc: Russell King Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Vincent Guittot Acked-by

[PATCH v5 05/10] drivers base/arch_topology: provide frequency-invariant accounting support

2017-09-26 Thread Dietmar Eggemann
Kroah-Hartman Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Viresh Kumar --- drivers/base/arch_topology.c | 14 ++ include/linux/arch_topology.h | 9 + 2 files changed, 23 insertions(+) diff --git a/drivers/base/arch_topology.c b/drivers/base/arch_topology.c

[PATCH v5 03/10] cpufreq: arm_big_little: invoke frequency-invariance setter function

2017-09-26 Thread Dietmar Eggemann
Call the frequency-invariance setter function arch_set_freq_scale() if the new frequency has been successfully set which is indicated by bL_cpufreq_set_rate() returning 0. Cc: Rafael J. Wysocki Cc: Viresh Kumar Cc: Sudeep Holla Signed-off-by: Dietmar Eggemann Acked-by: Viresh Kumar

[PATCH v5 07/10] arm: wire frequency-invariant accounting support up to the task scheduler

2017-09-26 Thread Dietmar Eggemann
river" function topology_get_freq_scale() for the task scheduler's frequency-invariant accounting instead of the default arch_scale_freq_capacity() in kernel/sched/sched.h. Cc: Russell King Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by: Vincent Guittot Acked-by: Russell King Tested-by

Re: [PATCH -v2 13/18] sched/fair: Propagate an effective runnable_load_avg

2017-10-02 Thread Dietmar Eggemann
On 01/09/17 14:21, Peter Zijlstra wrote: > The load balancer uses runnable_load_avg as load indicator. For > !cgroup this is: > > runnable_load_avg = \Sum se->avg.load_avg ; where se->on_rq > > That is, a direct sum of all runnable tasks on that runqueue. As > opposed to load_avg, which is a su

Re: [PATCH -v2 13/18] sched/fair: Propagate an effective runnable_load_avg

2017-10-03 Thread Dietmar Eggemann
On 03/10/17 09:50, Peter Zijlstra wrote: > On Mon, Oct 02, 2017 at 06:46:32PM +0100, Dietmar Eggemann wrote: > >>> +/* >>> + * Recomputes the group entity based on the current state of its group >>> + * runqueue. >>> + */ >>> +s

Re: [PATCH -v2 13/18] sched/fair: Propagate an effective runnable_load_avg

2017-10-03 Thread Dietmar Eggemann
On 01/09/17 14:21, Peter Zijlstra wrote: [...] > @@ -3169,8 +3198,8 @@ ___update_load_sum(u64 now, int cpu, str >* this happens during idle_balance() which calls >* update_blocked_averages() >*/ another nit-pick: s/weight/load in comment above. > - if (!weight) > -

[PATCH v2 0/1] arm: remove cpu_efficiency

2017-10-12 Thread Dietmar Eggemann
nt in parse_dt_topology() [01/04] - Remove 'cpu capacity scale management' and 'cpu capacity table' related comments [01/04] - Remove dt related patches [02-04/04] Dietmar Eggemann (1): arm: topology: remove cpu_efficiency arch/arm/kernel/topology.c | 132 ++--- 1 file changed, 4 insertions(+), 128 deletions(-) -- 2.11.0

[PATCH v2 1/1] arm: topology: remove cpu_efficiency

2017-10-12 Thread Dietmar Eggemann
big.LITTLE system no matter which core types it consists of. Cc: Russell King Cc: Vincent Guittot Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- arch/arm/kernel/topology.c | 132 ++--- 1 file changed, 4 insertions(+), 128 deletions(-) diff --g

Re: [PATCH -v2 15/18] sched/fair: Align PELT windows between cfs_rq and its se

2017-10-09 Thread Dietmar Eggemann
On 06/10/17 14:02, Peter Zijlstra wrote: > On Wed, Oct 04, 2017 at 08:27:01PM +0100, Dietmar Eggemann wrote: >> On 01/09/17 14:21, Peter Zijlstra wrote: >>> The PELT _sum values are a saw-tooth function, dropping on the decay >>> edge and then growing back up again duri

Re: [PATCH 4/4] arm: dts: r8a7790: add cpu capacity-dmips-mhz information

2017-10-09 Thread Dietmar Eggemann
On 18/09/17 08:39, Simon Horman wrote: > On Wed, Aug 30, 2017 at 03:41:20PM +0100, Dietmar Eggemann wrote: >> The following 'capacity-dmips-mhz' dt property values are used: >> >> Cortex-A15: 1024, Cortex-A7: 539 >> >> They have been derived form the cp

[PATCH 2/6] drivers base/arch_topology: frequency-invariant load-tracking support

2017-06-08 Thread Dietmar Eggemann
of the task scheduler. Cc: Catalin Marinas Cc: Will Deacon Cc: Russell King Cc: Greg Kroah-Hartman Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- drivers/base/arch_topology.c | 52 --- include/linux/arch_topology.h | 2 ++ 2 files changed, 51 inse

[PATCH 4/6] arm: wire cpu-invariant accounting support up to the task scheduler

2017-06-08 Thread Dietmar Eggemann
to use the arch_topology "driver" function topology_get_cpu_scale() for the task scheduler's cpu-invariant accounting instead of the default arch_scale_cpu_capacity() in kernel/sched/sched.h. Cc: Russell King Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- arch/arm/include/asm/topology.

[PATCH 5/6] arm64: wire frequency-invariant accounting support up to the task scheduler

2017-06-08 Thread Dietmar Eggemann
river" function topology_get_freq_scale() for the task scheduler's frequency-invariant accounting instead of the default arch_scale_freq_capacity() in kernel/sched/sched.h. Cc: Catalin Marinas Cc: Will Deacon Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- arch/arm64/include/asm/topolog

[PATCH 0/6] arm, arm64: frequency- and cpu-invariant accounting support for task scheduler

2017-06-08 Thread Dietmar Eggemann
nning a ramp-up rt-app task pinned to a cpu with the ondemand cpufreq governor and checking the load-tracking signals of this task. [1] https://marc.info/?l=linux-kernel&m=149625018223002&w=2 Dietmar Eggemann (6): drivers base/arch_topology: prepare cpufreq policy notifier for f

[PATCH 6/6] arm64: wire cpu-invariant accounting support up to the task scheduler

2017-06-08 Thread Dietmar Eggemann
to use the arch_topology "driver" function topology_get_cpu_scale() for the task scheduler's cpu-invariant accounting instead of the default arch_scale_cpu_capacity() in kernel/sched/sched.h. Cc: Catalin Marinas Cc: Will Deacon Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- arch/arm64/i

[PATCH 1/6] drivers base/arch_topology: prepare cpufreq policy notifier for frequency-invariant load-tracking support

2017-06-08 Thread Dietmar Eggemann
pu loop before the check if cap_parsing_failed so it has to be a continue. Cc: Catalin Marinas Cc: Will Deacon Cc: Russell King Cc: Greg Kroah-Hartman Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- drivers/base/arch_topology.c | 12 1 file changed, 8 insertions(+), 4 deleti

[PATCH 3/6] arm: wire frequency-invariant accounting support up to the task scheduler

2017-06-08 Thread Dietmar Eggemann
river" function topology_get_freq_scale() for the task scheduler's frequency-invariant accounting instead of the default arch_scale_freq_capacity() in kernel/sched/sched.h. Cc: Russell King Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- arch/arm/include/asm/topology.h | 5 + arch/arm/k

Re: [PATCH v3 00/10] arm, arm64, cpufreq: frequency- and cpu-invariant accounting support for task scheduler

2017-08-04 Thread Dietmar Eggemann
Hi Rafael, On 27/07/17 20:33, Dietmar Eggemann wrote: [...] > Patch high level description: > >[ 01/10] Fix to free cpumask cpus_to_visit >[ 02/10] Default (empty, weak) arch_set_freq_scale() implementation >[03,04/10] Call arch_set_freq_scale() from two

Re: [PATCH V6] sched/fair: Remove group imbalance from calculate_imbalance()

2017-07-28 Thread Dietmar Eggemann
On 26/07/17 15:54, Peter Zijlstra wrote: > On Tue, Jul 18, 2017 at 08:48:53PM +0100, Dietmar Eggemann wrote: >> Hi Jeffrey, >> >> On 13/07/17 20:55, Jeffrey Hugo wrote: [...] >>> Since the group imbalance path in calculate_imbalance() is at best a NOP >&g

Re: [PATCH V6] sched/fair: Remove group imbalance from calculate_imbalance()

2017-07-28 Thread Dietmar Eggemann
On 28/07/17 13:59, Peter Zijlstra wrote: > On Fri, Jul 28, 2017 at 01:16:24PM +0100, Dietmar Eggemann wrote: >>>> IIRC the topology you had in mind was MC + DIE level with n (n > 2) DIE >>>> level sched groups. [...] >>> If I then start a 3rd loop,

Re: [PATCH v3 02/10] cpufreq: provide default frequency-invariance setter function

2017-08-02 Thread Dietmar Eggemann
Hi Viresh, On 28/07/17 08:30, Viresh Kumar wrote: > On 27-07-17, 20:33, Dietmar Eggemann wrote: >> diff --git a/drivers/cpufreq/cpufreq.c b/drivers/cpufreq/cpufreq.c >> index 9bf97a366029..04e2f7e4964e 100644 >> --- a/drivers/cpufreq/cpufreq.c >> +++ b/drivers/cpuf

Re: [PATCH v3 00/10] arm, arm64, cpufreq: frequency- and cpu-invariant accounting support for task scheduler

2017-08-02 Thread Dietmar Eggemann
Hi Russell, On 27/07/17 20:33, Dietmar Eggemann wrote: [...] > Patch high level description: > >[ 01/10] Fix to free cpumask cpus_to_visit >[ 02/10] Default (empty, weak) arch_set_freq_scale() implementation >[03,04/10] Call arch_set_freq_scale() from two

[PATCH v3 00/10] arm, arm64, cpufreq: frequency- and cpu-invariant accounting support for task scheduler

2017-07-27 Thread Dietmar Eggemann
s://marc.info/?l=linux-pm&m=149933474313566&w=2 [3] http://arminfo.emea.arm.com/help/topic/com.arm.doc.den0056a/DEN0056A_System_Control_and_Management_Interface.pdf [4] https://marc.info/?l=linux-kernel&m=149690865010019&w=2 Dietmar Eggemann (10): drivers base/arch_topology: free cpumask cpus_to_visit cpufreq: provide d

[PATCH v3 03/10] cpufreq: arm_big_little: invoke frequency-invariance setter function

2017-07-27 Thread Dietmar Eggemann
Call the frequency-invariance setter function arch_set_freq_scale() if the new frequency has been successfully set which is indicated by bL_cpufreq_set_rate() returning 0. Cc: Rafael J. Wysocki Cc: Viresh Kumar Cc: Sudeep Holla Signed-off-by: Dietmar Eggemann --- drivers/cpufreq

[PATCH v3 06/10] drivers base/arch_topology: allow inlining cpu-invariant accounting support

2017-07-27 Thread Dietmar Eggemann
Allow inlining of topology_get_cpu_scale() into the task scheduler fast path (e.g. __update_load_avg_se()) by coding it as a static inline function in the arch topology header file. Cc: Greg Kroah-Hartman Cc: Juri Lelli Signed-off-by: Dietmar Eggemann --- drivers/base/arch_topology.c | 7

[PATCH v3 10/10] arm64: wire cpu-invariant accounting support up to the task scheduler

2017-07-27 Thread Dietmar Eggemann
to use the arch_topology "driver" function topology_get_cpu_scale() for the task scheduler's cpu-invariant accounting instead of the default arch_scale_cpu_capacity() in kernel/sched/sched.h. Cc: Catalin Marinas Cc: Will Deacon Cc: Juri Lelli Signed-off-by: Dietmar Eggemann Acked-by:

<    3   4   5   6   7   8   9   >