Re: [PATCH v2 1/2] sched: fix init NOHZ_IDLE flag

2013-02-19 Thread Vincent Guittot
On 19 February 2013 11:29, Vincent Guittot vincent.guit...@linaro.org wrote: On 18 February 2013 16:40, Frederic Weisbecker fweis...@gmail.com wrote: 2013/2/18 Vincent Guittot vincent.guit...@linaro.org: On 18 February 2013 15:38, Frederic Weisbecker fweis...@gmail.com wrote: I pasted

[PATCH v4] sched: fix init NOHZ_IDLE flag

2013-02-21 Thread Vincent Guittot
the build of the sched_domain will not corrupt the initialization state Change since V1: - remove the patch for SCHED softirq on an idle core use case as it was a side effect of the other use cases. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/core.c |4

Re: [PATCH v4] sched: fix init NOHZ_IDLE flag

2013-02-22 Thread Vincent Guittot
On 22 February 2013 13:32, Frederic Weisbecker fweis...@gmail.com wrote: On Thu, Feb 21, 2013 at 09:29:16AM +0100, Vincent Guittot wrote: On my smp platform which is made of 5 cores in 2 clusters, I have the nr_busy_cpu field of sched_group_power struct that is not null when the platform

[RFC] sched: nohz_idle_balance

2012-09-12 Thread Vincent Guittot
On tickless system, one CPU runs load balance for all idle CPUs. The cpu_load of this CPU is updated before starting the load balance of each other idle CPUs. We should instead update the cpu_load of the balance_cpu. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched

Re: [RFC] sched: nohz_idle_balance

2012-09-13 Thread Vincent Guittot
Wrong button make me removed others guys from the thread. Sorry for this mistake. On 13 September 2012 09:56, Mike Galbraith efa...@gmx.de wrote: On Thu, 2012-09-13 at 09:44 +0200, Vincent Guittot wrote: On 13 September 2012 09:29, Mike Galbraith efa...@gmx.de wrote: On Thu, 2012-09-13 at 08

Re: [PATCH v4 0/5] ARM: topology: set the capacity of each cores for big.LITTLE

2012-09-13 Thread Vincent Guittot
On 10 July 2012 15:42, Peter Zijlstra a.p.zijls...@chello.nl wrote: On Tue, 2012-07-10 at 14:35 +0200, Vincent Guittot wrote: May be the last one which enable ARCH_POWER should also go into tip ? OK, I can take it. Hi Peter, I can't find the patch that enable ARCH_POWER in the tip tree

Re: [PATCH v4 0/5] ARM: topology: set the capacity of each cores for big.LITTLE

2012-09-13 Thread Vincent Guittot
On 13 September 2012 14:07, Peter Zijlstra a.p.zijls...@chello.nl wrote: On Thu, 2012-09-13 at 11:17 +0200, Vincent Guittot wrote: On 10 July 2012 15:42, Peter Zijlstra a.p.zijls...@chello.nl wrote: On Tue, 2012-07-10 at 14:35 +0200, Vincent Guittot wrote: May be the last one which enable

Re: [discussion]sched: a rough proposal to enable power saving in scheduler

2012-08-20 Thread Vincent Guittot
On 15 August 2012 13:05, Peter Zijlstra a.p.zijls...@chello.nl wrote: On Mon, 2012-08-13 at 20:21 +0800, Alex Shi wrote: Since there is no power saving consideration in scheduler CFS, I has a very rough idea for enabling a new power saving schema in CFS. Adding Thomas, he always delights

Re: [discussion]sched: a rough proposal to enable power saving in scheduler

2012-08-20 Thread Vincent Guittot
On 16 August 2012 07:03, Alex Shi alex@intel.com wrote: On 08/16/2012 12:19 AM, Matthew Garrett wrote: On Mon, Aug 13, 2012 at 08:21:00PM +0800, Alex Shi wrote: power aware scheduling), this proposal will adopt the sched_balance_policy concept and use 2 kind of policy: performance,

Re: [discussion]sched: a rough proposal to enable power saving in scheduler

2012-08-20 Thread Vincent Guittot
On 17 August 2012 10:43, Paul Turner p...@google.com wrote: On Wed, Aug 15, 2012 at 4:05 AM, Peter Zijlstra a.p.zijls...@chello.nl wrote: On Mon, 2012-08-13 at 20:21 +0800, Alex Shi wrote: Since there is no power saving consideration in scheduler CFS, I has a very rough idea for enabling a

Re: [discussion]sched: a rough proposal to enable power saving in scheduler

2012-08-21 Thread Vincent Guittot
On 21 August 2012 02:58, Alex Shi alex@intel.com wrote: On 08/20/2012 11:36 PM, Vincent Guittot wrote: What you want it to keep track of a per-cpu utilization level (inverse of idle-time) and using PJTs per-task runnable avg see if placing the new task on will exceed the utilization

[PATCH v4 0/5] ARM: topology: set the capacity of each cores for big.LITTLE

2012-07-09 Thread Vincent Guittot
the use of NR_CPUS and use nr_cpu_ids instead - Remove broken power estimation of x86 Peter Zijlstra (1): sched, x86: Remove broken power estimation Vincent Guittot (4): ARM: topology: Add arch_scale_freq_power function ARM: topology: factorize the update of sibling masks ARM: topology

[PATCH v4 1/5] ARM: topology: Add arch_scale_freq_power function

2012-07-09 Thread Vincent Guittot
Add infrastructure to be able to modify the cpu_power of each core Signed-off-by: Vincent Guittot vincent.guit...@linaro.org Reviewed-by: Namhyung Kim namhy...@kernel.org --- arch/arm/kernel/topology.c | 38 +- 1 file changed, 37 insertions(+), 1 deletion

[PATCH v4 2/5] ARM: topology: factorize the update of sibling masks

2012-07-09 Thread Vincent Guittot
...@arm.com Signed-off-by: Vincent Guittot vincent.guit...@linaro.org Reviewed-by: Namhyung Kim namhy...@kernel.org --- arch/arm/kernel/topology.c | 48 +--- 1 file changed, 27 insertions(+), 21 deletions(-) diff --git a/arch/arm/kernel/topology.c b/arch/arm/kernel

[PATCH v4 3/5] ARM: topology: Update cpu_power according to DT information

2012-07-09 Thread Vincent Guittot
will run on big cores and short ones on LITTLE cores. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org Reviewed-by: Namhyung Kim namhy...@kernel.org --- arch/arm/kernel/topology.c | 153 1 file changed, 153 insertions(+) diff --git a/arch/arm

[PATCH v4 4/5] sched, x86: Remove broken power estimation

2012-07-09 Thread Vincent Guittot
From: Peter Zijlstra a.p.zijls...@chello.nl The x86 sched power implementation has been broken forever and gets in the way of other stuff, remove it. For archaeological interest, fixing this code would require dealing with the cross-cpu calling of these functions and more importantly, we need to

[PATCH v4 5/5] sched: cpu_power: enable ARCH_POWER

2012-07-09 Thread Vincent Guittot
Heteregeneous ARM platform uses arch_scale_freq_power function to reflect the relative capacity of each core Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/features.h |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/sched/features.h b

Re: [PATCH v4 3/5] ARM: topology: Update cpu_power according to DT information

2012-07-09 Thread Vincent Guittot
On 9 July 2012 12:55, Shilimkar, Santosh santosh.shilim...@ti.com wrote: Vincent, On Mon, Jul 9, 2012 at 2:57 PM, Vincent Guittot vincent.guit...@linaro.org wrote: Use cpu compatibility field and clock-frequency field of DT to estimate the capacity of each core of the system and to update

Re: [PATCH v4 3/5] ARM: topology: Update cpu_power according to DT information

2012-07-09 Thread Vincent Guittot
On 9 July 2012 15:00, Shilimkar, Santosh santosh.shilim...@ti.com wrote: On Mon, Jul 9, 2012 at 6:02 PM, Vincent Guittot vincent.guit...@linaro.org wrote: On 9 July 2012 12:55, Shilimkar, Santosh santosh.shilim...@ti.com wrote: Vincent, On Mon, Jul 9, 2012 at 2:57 PM, Vincent Guittot

Re: [PATCH v4 3/5] ARM: topology: Update cpu_power according to DT information

2012-07-09 Thread Vincent Guittot
On 9 July 2012 16:37, Shilimkar, Santosh santosh.shilim...@ti.com wrote: On Mon, Jul 9, 2012 at 8:06 PM, Vincent Guittot vincent.guit...@linaro.org wrote: On 9 July 2012 15:00, Shilimkar, Santosh santosh.shilim...@ti.com wrote: On Mon, Jul 9, 2012 at 6:02 PM, Vincent Guittot vincent.guit

Re: [PATCH v4 0/5] ARM: topology: set the capacity of each cores for big.LITTLE

2012-07-10 Thread Vincent Guittot
On 10 July 2012 13:27, Peter Zijlstra a.p.zijls...@chello.nl wrote: On Mon, 2012-07-09 at 11:27 +0200, Vincent Guittot wrote: This patchset creates an arch_scale_freq_power function for ARM, which is used to set the relative capacity of each core of a big.LITTLE system. It also removes

Re: [RFC 3/6] sched: pack small tasks

2012-11-20 Thread Vincent Guittot
On 20 November 2012 15:28, Morten Rasmussen morten.rasmus...@arm.com wrote: Hi Vincent, On Mon, Nov 12, 2012 at 01:51:00PM +, Vincent Guittot wrote: On 9 November 2012 18:13, Morten Rasmussen morten.rasmus...@arm.com wrote: Hi Vincent, I have experienced suboptimal buddy selection

Re: [PATCH V2 Resend 3/4] workqueue: Schedule work on non-idle cpu instead of current one

2012-11-27 Thread Vincent Guittot
On 27 November 2012 06:19, Viresh Kumar viresh.ku...@linaro.org wrote: Hi Tejun, On 26 November 2012 22:45, Tejun Heo t...@kernel.org wrote: On Tue, Nov 06, 2012 at 04:08:45PM +0530, Viresh Kumar wrote: I'm pretty skeptical about this. queue_work() w/o explicit CPU assignment has always

Re: [PATCH V2 Resend 3/4] workqueue: Schedule work on non-idle cpu instead of current one

2012-11-27 Thread Vincent Guittot
On 27 November 2012 14:59, Steven Rostedt rost...@goodmis.org wrote: On Tue, 2012-11-27 at 19:18 +0530, Viresh Kumar wrote: On 27 November 2012 18:56, Steven Rostedt rost...@goodmis.org wrote: A couple of things. The sched_select_cpu() is not cheap. It has a double loop of domains/cpus

Re: [PATCH V2 Resend 3/4] workqueue: Schedule work on non-idle cpu instead of current one

2012-11-27 Thread Vincent Guittot
On 27 November 2012 16:04, Steven Rostedt rost...@goodmis.org wrote: On Tue, 2012-11-27 at 15:55 +0100, Vincent Guittot wrote: On 27 November 2012 14:59, Steven Rostedt rost...@goodmis.org wrote: On Tue, 2012-11-27 at 19:18 +0530, Viresh Kumar wrote: On 27 November 2012 18:56, Steven Rostedt

Re: [RFC PATCH v2 3/6] sched: pack small tasks

2012-12-18 Thread Vincent Guittot
On 17 December 2012 16:24, Alex Shi alex@intel.com wrote: The scheme below tries to summaries the idea: Socket | socket 0 | socket 1 | socket 2 | socket 3 | LCPU| 0 | 1-15 | 16 | 17-31 | 32 | 33-47 | 48 | 49-63 | buddy conf0 | 0 | 0| 1 | 16| 2 | 32| 3 |

Re: [RFC PATCH v2 3/6] sched: pack small tasks

2012-12-21 Thread Vincent Guittot
On 21 December 2012 06:47, Namhyung Kim namhy...@kernel.org wrote: Hi Vincent, On Thu, Dec 13, 2012 at 11:11:11AM +0100, Vincent Guittot wrote: On 13 December 2012 03:17, Alex Shi alex@intel.com wrote: On 12/12/2012 09:31 PM, Vincent Guittot wrote: +static bool is_buddy_busy(int cpu

Re: [RFC PATCH v2 3/6] sched: pack small tasks

2012-12-21 Thread Vincent Guittot
On 21 December 2012 09:53, Vincent Guittot vincent.guit...@linaro.org wrote: On 21 December 2012 06:47, Namhyung Kim namhy...@kernel.org wrote: Hi Vincent, On Thu, Dec 13, 2012 at 11:11:11AM +0100, Vincent Guittot wrote: On 13 December 2012 03:17, Alex Shi alex@intel.com wrote: On 12/12

[RFC PATCH v2 0/6] sched: packing small tasks

2012-12-12 Thread Vincent Guittot
kernel: Vincent Guittot (6): Revert sched: introduce temporary FAIR_GROUP_SCHED dependency for load-tracking sched: add a new SD SHARE_POWERLINE flag for sched_domain sched: pack small tasks sched: secure access to other CPU statistics sched: pack the idle load balance ARM: sched

RFC PATCH v2 1/6] Revert sched: introduce temporary FAIR_GROUP_SCHED dependency for load-tracking

2012-12-12 Thread Vincent Guittot
This reverts commit f4e26b120b9de84cb627bc7361ba43cfdc51341f Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- include/linux/sched.h |8 +--- kernel/sched/core.c |7 +-- kernel/sched/fair.c |3 +-- kernel/sched/sched.h |9 + 4 files changed, 4

[RFC PATCH v2 5/6] sched: pack the idle load balance

2012-12-12 Thread Vincent Guittot
Look for an idle CPU close to the pack buddy CPU whenever possible. The goal is to prevent the wake up of a CPU which doesn't share the power domain of the pack buddy CPU. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c | 18 ++ 1 file changed

[RFC PATCH v2 6/6] ARM: sched: clear SD_SHARE_POWERLINE

2012-12-12 Thread Vincent Guittot
The ARM platforms take advantage of packing small tasks on few cores. This is true even when the cores of a cluster can't be power gated independantly. So we clear SD_SHARE_POWERDOMAIN at MC and CPU level. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- arch/arm/kernel/topology.c

[RFC PATCH v2 4/6] sched: secure access to other CPU statistics

2012-12-12 Thread Vincent Guittot
plugging a CPU, which implies that we could use the max value instead of reading runnable_avg_period after 345ms. During the starting phase, we must ensure a minimum of coherency between the fields. A simple rule is runnable_avg_sum = runnable_avg_period. Signed-off-by: Vincent Guittot vincent.guit

[PATCH 2/6] sched: add a new SD SHARE_POWERLINE flag for sched_domain

2012-12-12 Thread Vincent Guittot
packing some tasks in a group of CPUs in order to power gated the other groups instead of spreading the tasks. The default behavior of the scheduler is to spread tasks so the flag is set into all sched_domains Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- arch/ia64/include/asm

Re: [PATCH 0/18] sched: simplified fork, enable load average into LB and power awareness scheduling

2012-12-12 Thread Vincent Guittot
be exploited as per the demands of the HW architecture. Linus definitely disagree such ideas. :) So, need to summaries the logical beyond all hardware. example is the small task packing (and spreading) for which Vincent Guittot has posted a patchset[1] earlier and so has Alex now. Sure. I just thought

Re: [PATCH 2/6] sched: add a new SD SHARE_POWERLINE flag for sched_domain

2012-12-13 Thread Vincent Guittot
On 13 December 2012 03:24, Alex Shi alex@intel.com wrote: On 12/12/2012 09:31 PM, Vincent Guittot wrote: This new flag SD_SHARE_POWERDOMAIN is used to reflect whether groups of CPU in a sched_domain level can or not reach a different power state. If clusters can be power gated

Re: [RFC PATCH v2 3/6] sched: pack small tasks

2012-12-13 Thread Vincent Guittot
On 13 December 2012 03:17, Alex Shi alex@intel.com wrote: On 12/12/2012 09:31 PM, Vincent Guittot wrote: During the creation of sched_domain, we define a pack buddy CPU for each CPU when one is available. We want to pack at all levels where a group of CPU can be power gated independently

Re: [RFC PATCH v2 3/6] sched: pack small tasks

2012-12-13 Thread Vincent Guittot
On 13 December 2012 15:25, Alex Shi alex@intel.com wrote: On 12/13/2012 06:11 PM, Vincent Guittot wrote: On 13 December 2012 03:17, Alex Shi alex@intel.com wrote: On 12/12/2012 09:31 PM, Vincent Guittot wrote: During the creation of sched_domain, we define a pack buddy CPU for each

Re: [RFC PATCH v2 3/6] sched: pack small tasks

2012-12-13 Thread Vincent Guittot
On 13 December 2012 15:53, Vincent Guittot vincent.guit...@linaro.org wrote: On 13 December 2012 15:25, Alex Shi alex@intel.com wrote: On 12/13/2012 06:11 PM, Vincent Guittot wrote: On 13 December 2012 03:17, Alex Shi alex@intel.com wrote: On 12/12/2012 09:31 PM, Vincent Guittot wrote

Re: [RFC PATCH v2 3/6] sched: pack small tasks

2012-12-14 Thread Vincent Guittot
On 14 December 2012 02:46, Alex Shi alex@intel.com wrote: On 12/13/2012 11:48 PM, Vincent Guittot wrote: On 13 December 2012 15:53, Vincent Guittot vincent.guit...@linaro.org wrote: On 13 December 2012 15:25, Alex Shi alex@intel.com wrote: On 12/13/2012 06:11 PM, Vincent Guittot

Re: [RFC PATCH v2 3/6] sched: pack small tasks

2012-12-14 Thread Vincent Guittot
On 14 December 2012 08:45, Mike Galbraith bitbuc...@online.de wrote: On Fri, 2012-12-14 at 14:36 +0800, Alex Shi wrote: On 12/14/2012 12:45 PM, Mike Galbraith wrote: Do you have further ideas for buddy cpu on such example? Which kind of sched_domain configuration have you for such

Re: [RFC PATCH v2 3/6] sched: pack small tasks

2012-12-17 Thread Vincent Guittot
On 16 December 2012 08:12, Alex Shi alex@intel.com wrote: On 12/14/2012 05:33 PM, Vincent Guittot wrote: On 14 December 2012 02:46, Alex Shi alex@intel.com wrote: On 12/13/2012 11:48 PM, Vincent Guittot wrote: On 13 December 2012 15:53, Vincent Guittot vincent.guit...@linaro.org

Re: [RFC v2 PATCH 2/2] sched: Use Per-Entity-Load-Tracking metric for load balancing

2012-11-15 Thread Vincent Guittot
Hi Preeti, On 15 November 2012 17:54, Preeti U Murthy pre...@linux.vnet.ibm.com wrote: Currently the load balancer weighs a task based upon its priority,and this weight consequently gets added up to the weight of the run queue that it is on.It is this weight of the runqueue that sums up to a

[RFC 3/3] sched: fix update NOHZ_IDLE flag

2012-11-19 Thread Vincent Guittot
to detect such intialization step and to not modify the NOHZ_IDLE flag Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 3d0686c..1bf7c87 100644

[RFC 0/3] sched: fix nr_busy_cpus

2012-11-19 Thread Vincent Guittot
idle state while booting all CPUs - when a CPU is unplug and/or replug Vincent Guittot (3): sched: fix nr_busy_cpus with coupled cpuidle sched: fix init NOHZ_IDLE flag sched: fix update NOHZ_IDLE flag kernel/sched/core.c |1 + kernel/sched/fair.c |2 +- kernel/time/tick

[RFC 1/3] sched: fix nr_busy_cpus with coupled cpuidle

2012-11-19 Thread Vincent Guittot
-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/time/tick-sched.c |2 ++ 1 file changed, 2 insertions(+) diff --git a/kernel/time/tick-sched.c b/kernel/time/tick-sched.c index a402608..e19bbc9 100644 --- a/kernel/time/tick-sched.c +++ b/kernel/time/tick-sched.c @@ -526,6 +526,8 @@ void

[RFC 2/3] sched: fix init NOHZ_IDLE flag

2012-11-19 Thread Vincent Guittot
-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/core.c |1 + 1 file changed, 1 insertion(+) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 5dae0d2..05058e8 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -5817,6 +5817,7 @@ static void

Re: [PATCH V2 3/3] workqueue: Schedule work on non-idle cpu instead of current one

2012-10-01 Thread Vincent Guittot
On 1 October 2012 05:47, Viresh Kumar viresh.ku...@linaro.org wrote: On 1 October 2012 06:02, Tejun Heo t...@kernel.org wrote: It isn't about the CPU being actually idle? No. Being idle only from scheduler's perspective. :) Also, if it's only about timers, shouldn't it be enough to implement

Re: sched: Consequences of integrating the Per Entity Load Tracking Metric into the Load Balancer

2013-01-07 Thread Vincent Guittot
On 2 January 2013 05:22, Preeti U Murthy pre...@linux.vnet.ibm.com wrote: Hi everyone, I have been looking at how different workloads react when the per entity load tracking metric is integrated into the load balancer and what are the possible reasons for it. I had posted the integration

Re: sched: Consequences of integrating the Per Entity Load Tracking Metric into the Load Balancer

2013-01-08 Thread Vincent Guittot
On 8 January 2013 07:06, Preeti U Murthy pre...@linux.vnet.ibm.com wrote: On 01/07/2013 09:18 PM, Vincent Guittot wrote: On 2 January 2013 05:22, Preeti U Murthy pre...@linux.vnet.ibm.com wrote: Hi everyone, I have been looking at how different workloads react when the per entity load

Re: [RFC][PATCH 2/2] ARM64: introduce cluster id and make a difference between socket id

2013-07-29 Thread Vincent Guittot
On 27 July 2013 12:42, Hanjun Guo hanjun@linaro.org wrote: In the cpu topology information, we define topology_physical_package_id() as cpu socket id, which means that the socket id is the idenfication for physical processor, not for a cluster in a cpu die. On ARM64 platform, multi

Re: [RFC][PATCH 1/2] ARM64: add cpu topology definition

2013-07-29 Thread Vincent Guittot
and/or CONFIG_SCHED_SMT are enable. So you should also add these configs for arm64 so the scheduler can use it Vincent For ARM64, we can get the topology from the MPIDR register which defines the the affinity of processors. This patch is mainly based on arch/arm/kernel/topology.c written by Vincent

Re: [RFC][PATCH 1/2] ARM64: add cpu topology definition

2013-07-29 Thread Vincent Guittot
On 29 July 2013 12:15, Sudeep KarkadaNagesha sudeep.karkadanage...@arm.com wrote: On 29/07/13 10:46, Vincent Guittot wrote: On 27 July 2013 12:42, Hanjun Guo hanjun@linaro.org wrote: Power aware scheduling needs the cpu topology information to improve the cpu scheduler decision making

Re: [RFC][PATCH 1/2] ARM64: add cpu topology definition

2013-07-29 Thread Vincent Guittot
On 29 July 2013 11:54, Will Deacon will.dea...@arm.com wrote: On Mon, Jul 29, 2013 at 10:46:06AM +0100, Vincent Guittot wrote: On 27 July 2013 12:42, Hanjun Guo hanjun@linaro.org wrote: Power aware scheduling needs the cpu topology information to improve the cpu scheduler decision making

Re: [RFC][PATCH 1/9] sched: Introduce power scheduler

2013-07-10 Thread Vincent Guittot
On 10 July 2013 13:11, Morten Rasmussen morten.rasmus...@arm.com wrote: On Wed, Jul 10, 2013 at 03:10:15AM +0100, Arjan van de Ven wrote: On 7/9/2013 8:55 AM, Morten Rasmussen wrote: + mod_delayed_work_on(schedule_cpu(), system_wq, dwork, +

Re: [RFC][PATCH 0/9] sched: Power scheduler design proposal

2013-07-15 Thread Vincent Guittot
On 13 July 2013 12:23, Catalin Marinas catalin.mari...@arm.com wrote: Hi Peter, (Morten's away for a week, I'll try cover some bits in the meantime) On Sat, Jul 13, 2013 at 07:49:09AM +0100, Peter Zijlstra wrote: On Tue, Jul 09, 2013 at 04:55:29PM +0100, Morten Rasmussen wrote: This patch

Re: [Resend patch v8 06/13] sched: compute runnable load avg in cpu_load and cpu_avg_load_per_task

2013-06-20 Thread Vincent Guittot
On 20 June 2013 04:18, Alex Shi alex@intel.com wrote: They are the base values in load balance, update them with rq runnable load average, then the load balance will consider runnable load avg naturally. We also try to include the blocked_load_avg as cpu load in balancing, but that cause

Re: [PATCH v2 2/3] sched: factor out code to should_we_balance()

2013-08-02 Thread Vincent Guittot
On 2 August 2013 03:50, Joonsoo Kim iamjoonsoo@lge.com wrote: Now checking whether this cpu is appropriate to balance or not is embedded into update_sg_lb_stats() and this checking has no direct relationship to this function. There is not enough reason to place this checking at

Re: [RFC][PATCH v5 01/14] sched: add a new arch_sd_local_flags for sched_domain init

2013-11-05 Thread Vincent Guittot
On 5 November 2013 15:06, Peter Zijlstra pet...@infradead.org wrote: On Fri, Oct 18, 2013 at 01:52:15PM +0200, Vincent Guittot wrote: The function arch_sd_local_flags is used to set flags in sched_domains according to the platform architecture. A new flag SD_SHARE_POWERDOMAIN is also created

Re: [RFC][PATCH v5 01/14] sched: add a new arch_sd_local_flags for sched_domain init

2013-11-06 Thread Vincent Guittot
On 5 November 2013 23:27, Peter Zijlstra pet...@infradead.org wrote: On Tue, Nov 05, 2013 at 03:57:23PM +0100, Vincent Guittot wrote: Your proposal looks fine for me. It's clearly better to move in one place the configuration of sched_domain fields. Have you already got an idea about how

Bench for testing scheduler

2013-11-07 Thread Vincent Guittot
Hi, During the Energy-aware scheduling mini-summit, we spoke about benches that should be used to evaluate the modifications of the scheduler. I’d like to propose a bench that uses cyclictest to measure the wake up latency and the power consumption. The goal of this bench is to exercise the

Re: Bench for testing scheduler

2013-11-07 Thread Vincent Guittot
of this email On Thu, Nov 07, 2013 at 10:54:30AM +, Vincent Guittot wrote: During the Energy-aware scheduling mini-summit, we spoke about benches that should be used to evaluate the modifications of the scheduler. I’d like to propose a bench that uses cyclictest to measure the wake up

Re: Bench for testing scheduler

2013-11-08 Thread Vincent Guittot
On 8 November 2013 01:04, Rowand, Frank frank.row...@sonymobile.com wrote: Hi Vincent, Thanks for creating some benchmark numbers! you're welcome On Thursday, November 07, 2013 5:33 AM, Vincent Guittot [vincent.guit...@linaro.org] wrote: On 7 November 2013 12:32, Catalin Marinas

Re: Bench for testing scheduler

2013-11-08 Thread Vincent Guittot
On 7 November 2013 15:04, Catalin Marinas catalin.mari...@arm.com wrote: On Thu, Nov 07, 2013 at 01:33:43PM +, Vincent Guittot wrote: On 7 November 2013 12:32, Catalin Marinas catalin.mari...@arm.com wrote: On Thu, Nov 07, 2013 at 10:54:30AM +, Vincent Guittot wrote: During

[RFC][PATCH v5 03/14] sched: define pack buddy CPUs

2013-10-18 Thread Vincent Guittot
| CPU0 | Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/core.c |1 + kernel/sched/fair.c | 70 ++ kernel/sched/sched.h |5 3 files changed, 76 insertions(+) diff --git a/kernel/sched/core.c b/kernel/sched

[RFC][PATCH v5 00/14] sched: packing tasks

2013-10-18 Thread Vincent Guittot
the arch dependent function to set/clear SD_SHARE_POWERDOMAIN for ARM platform Vincent Guittot (14): sched: add a new arch_sd_local_flags for sched_domain init ARM: sched: clear SD_SHARE_POWERDOMAIN sched: define pack buddy CPUs sched: do load balance only with packing cpus sched: add

[RFC][PATCH v5 10/14] sched: init this_load to max in find_idlest_group

2013-10-18 Thread Vincent Guittot
). With a default value set to max, we will use the idlest group even if we skip the local_group. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c |2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index

[RFC][PATCH v5 09/14] sched: update the packing cpu list

2013-10-18 Thread Vincent Guittot
. The sd_pack_group and sd_pack_domain are used to quickly check if a power leader should be used in the packing effort Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c | 162 ++- 1 file changed, 149 insertions(+), 13 deletions

[RFC][PATCH v5 02/14] ARM: sched: clear SD_SHARE_POWERDOMAIN

2013-10-18 Thread Vincent Guittot
; }; }; }; ... }; Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- arch/arm/include/asm/topology.h |4 arch/arm/kernel/topology.c | 50 ++- 2 files changed, 53

[RFC][PATCH v5 05/14] sched: add a packing level knob

2013-10-18 Thread Vincent Guittot
The knob is used to set an average load threshold that will be used to trig the inclusion/removal of CPUs in the packing effort list. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- include/linux/sched/sysctl.h |9 + kernel/sched/fair.c | 26

[RFC][PATCH v5 08/14] sched: move load idx selection in find_idlest_group

2013-10-18 Thread Vincent Guittot
load_idx is used in find_idlest_group but initialized in select_task_rq_fair even when not used. The load_idx initialisation is moved in find_idlest_group and the sd_flag replaces it in the function's args. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c | 12

[RFC][PATCH v5 07/14] sched: get CPU's activity statistic

2013-10-18 Thread Vincent Guittot
, the activity level is set above the cpu_power in order to reflect the overload of The cpu Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c | 26 ++ 1 file changed, 26 insertions(+) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index

[RFC][PATCH v5 01/14] sched: add a new arch_sd_local_flags for sched_domain init

2013-10-18 Thread Vincent Guittot
-by: Vincent Guittot vincent.guit...@linaro.org --- arch/ia64/include/asm/topology.h |3 ++- arch/tile/include/asm/topology.h |3 ++- include/linux/sched.h|1 + include/linux/topology.h | 11 --- kernel/sched/core.c | 10 -- 5 files changed, 21

[RFC][PATCH v5 14/14] cpuidle: set the current wake up latency

2013-10-18 Thread Vincent Guittot
. This latter use case is not manage by the current version of the patch because it implies that the cpuidle drivers set the wake up latency instead of the cpuidle core. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org Conflicts: drivers/cpuidle/cpuidle.c --- drivers/cpuidle/cpuidle.c

[RFC][PATCH v5 06/14] sched: create a new field with available capacity

2013-10-18 Thread Vincent Guittot
This new field power_available reflects the available capacity of a CPU unlike the cpu_power which reflects the current capacity. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c | 14 +++--- kernel/sched/sched.h |3 ++- 2 files changed, 13

[RFC][PATCH v5 04/14] sched: do load balance only with packing cpus

2013-10-18 Thread Vincent Guittot
the power domain of the pack buddy CPU. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c | 80 --- 1 file changed, 76 insertions(+), 4 deletions(-) diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c index 5547831

[RFC][PATCH v5 11/14] sched: add a SCHED_PACKING_TASKS config

2013-10-18 Thread Vincent Guittot
The SCHED_PACKING_TASKS config is used to enable the packing tasks mecanism Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- init/Kconfig | 11 +++ 1 file changed, 11 insertions(+) diff --git a/init/Kconfig b/init/Kconfig index 3ecd8a1..4d2b5db 100644 --- a/init/Kconfig

[RFC][PATCH v5 12/14] sched: create a statistic structure

2013-10-18 Thread Vincent Guittot
Create a statistic structure that will be used to share information with other frameworks like cpuidle and cpufreq. This structure only contains the current wake up latency of a core for now but could be extended with other usefull information. Signed-off-by: Vincent Guittot vincent.guit

[RFC][PATCH v5 13/14] sched: differantiate idle cpu

2013-10-18 Thread Vincent Guittot
and a performance point of view. We should take into account the wake up latency of an idle CPU when the scheduler looks for the best CPU to use for a waking task. The wake up latency of a CPU is computed into a load that can be directly compared with task load and other CPUs load. Signed-off-by: Vincent Guittot

Re: Bench for testing scheduler

2013-11-12 Thread Vincent Guittot
On 8 November 2013 22:12, Rowand, Frank frank.row...@sonymobile.com wrote: On Friday, November 08, 2013 1:28 AM, Vincent Guittot [vincent.guit...@linaro.org] wrote: On 8 November 2013 01:04, Rowand, Frank frank.row...@sonymobile.com wrote: snip The Avg figures look almost stable IMO

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-12 Thread Vincent Guittot
On 11 November 2013 17:38, Peter Zijlstra pet...@infradead.org wrote: On Mon, Nov 11, 2013 at 11:33:45AM +, Catalin Marinas wrote: My understanding from the recent discussions is that the scheduler should decide directly on the C-state (or rather the deepest C-state possible since we don't

Re: [RFC][PATCH v5 05/14] sched: add a packing level knob

2013-11-12 Thread Vincent Guittot
On 12 November 2013 11:32, Peter Zijlstra pet...@infradead.org wrote: On Fri, Oct 18, 2013 at 01:52:18PM +0200, Vincent Guittot wrote: +int sched_proc_update_packing(struct ctl_table *table, int write, + void __user *buffer, size_t *lenp, + loff_t *ppos) +{ + int

Re: [RFC][PATCH v5 05/14] sched: add a packing level knob

2013-11-12 Thread Vincent Guittot
On 12 November 2013 11:55, Peter Zijlstra pet...@infradead.org wrote: On Tue, Nov 12, 2013 at 11:44:15AM +0100, Vincent Guittot wrote: On 12 November 2013 11:32, Peter Zijlstra pet...@infradead.org wrote: On Fri, Oct 18, 2013 at 01:52:18PM +0200, Vincent Guittot wrote: +int

Re: [RFC][PATCH v5 06/14] sched: create a new field with available capacity

2013-11-12 Thread Vincent Guittot
On 12 November 2013 11:34, Peter Zijlstra pet...@infradead.org wrote: On Fri, Oct 18, 2013 at 01:52:19PM +0200, Vincent Guittot wrote: This new field power_available reflects the available capacity of a CPU unlike the cpu_power which reflects the current capacity. - sdg-sgp-power_orig

Re: [RFC][PATCH v5 00/14] sched: packing tasks

2013-11-12 Thread Vincent Guittot
On 11 November 2013 12:33, Catalin Marinas catalin.mari...@arm.com wrote: Hi Vincent, (cross-posting to linux-pm as it was agreed to follow up on this list) snip So, IMO, defining the power topology is a good starting point and I think it's better to separate the patches from the energy

[RFC 0/6] rework sched_domain topology description

2014-03-04 Thread Vincent Guittot
/11/5/239 [3] https://lkml.org/lkml/2013/11/5/449 Vincent Guittot (6): sched: remove unused SCHED_INIT_NODE sched: rework of sched_domain topology definition sched: s390: create a dedicated topology table sched: powerpc: create a dedicated topology table sched: add a new

[RFC 3/6] sched: s390: create a dedicated topology table

2014-03-04 Thread Vincent Guittot
BOOK level is only relevant for s390 so we create a dedicated topology table with BOOK level and remove it from default table. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- arch/s390/include/asm/topology.h | 11 +-- arch/s390/kernel/topology.c | 25

[RFC 6/6] sched: ARM: create a dedicated scheduler topology table

2014-03-04 Thread Vincent Guittot
Create a dedicated topology table for ARM which will create new level to differentiate CPUs that can or not powergate independantly from others. The patch gives an example of how to add domain that will take advantage of SD_SHARE_POWERDOMAIN. Signed-off-by: Vincent Guittot vincent.guit

[RFC 4/6] sched: powerpc: create a dedicated topology table

2014-03-04 Thread Vincent Guittot
SD_ASYM_PACKING in the sd_flags of SMT level during the boot sequence and before the build of the sched_domain topology. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- arch/powerpc/kernel/smp.c | 35 +++ kernel/sched/core.c |6 -- 2 files

[RFC 5/6] sched: add a new SD_SHARE_POWERDOMAIN for sched_domain

2014-03-04 Thread Vincent Guittot
balancing level between group of CPUs than can power gate independantly. The default behavior of the scheduler is to spread tasks across CPUs and groups of CPUs so the flag is set into all sched_domains. Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- include/linux/sched.h |1 + kernel

[PATCH 2/6] sched: rework of sched_domain topology definition

2014-03-04 Thread Vincent Guittot
sequence of the sched_domain will take care of removing useless levels like those with 1 CPU and those with the same CPU span and relevant information for load balancing than its child . Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- arch/ia64/include/asm/topology.h | 24 arch/s390

[RFC 1/6] sched: remove unused SCHED_INIT_NODE

2014-03-04 Thread Vincent Guittot
not used since new numa scheduler init sequence Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- arch/metag/include/asm/topology.h | 27 --- 1 file changed, 27 deletions(-) diff --git a/arch/metag/include/asm/topology.h b/arch/metag/include/asm/topology.h

Re: [PATCH 2/6] sched: rework of sched_domain topology definition

2014-03-06 Thread Vincent Guittot
On 6 March 2014 01:09, Dietmar Eggemann dietmar.eggem...@arm.com wrote: On 05/03/14 07:18, Vincent Guittot wrote: We replace the old way to configure the scheduler topology with a new method which enables a platform to declare additionnal level (if needed). We still have a default topology

Re: [RFC 6/6] sched: ARM: create a dedicated scheduler topology table

2014-03-06 Thread Vincent Guittot
On 6 March 2014 06:38, Dietmar Eggemann dietmar.eggem...@arm.com wrote: On 05/03/14 07:18, Vincent Guittot wrote: Create a dedicated topology table for ARM which will create new level to differentiate CPUs that can or not powergate independantly from others. The patch gives an example of how

Re: [RFC 0/6] rework sched_domain topology description

2014-03-06 Thread Vincent Guittot
On 6 March 2014 07:17, Dietmar Eggemann dietmar.eggem...@arm.com wrote: On 05/03/14 07:18, Vincent Guittot wrote: This patchset was previously part of the larger tasks packing patchset [1]. I have splitted the latter in 3 different patchsets (at least) to make the thing easier

Re: [RFC 0/6] rework sched_domain topology description

2014-03-06 Thread Vincent Guittot
On 6 March 2014 20:31, Dietmar Eggemann dietmar.eggem...@arm.com wrote: On 06/03/14 09:04, Vincent Guittot wrote: On 6 March 2014 07:17, Dietmar Eggemann dietmar.eggem...@arm.com wrote: On 05/03/14 07:18, Vincent Guittot wrote: This patchset was previously part of the larger tasks packing

Re: [RFC 0/6] rework sched_domain topology description

2014-03-10 Thread Vincent Guittot
On 8 March 2014 13:40, Dietmar Eggemann dietmar.eggem...@arm.com wrote: On 07/03/14 02:47, Vincent Guittot wrote: On 6 March 2014 20:31, Dietmar Eggemann dietmar.eggem...@arm.com wrote: On 06/03/14 09:04, Vincent Guittot wrote: On 6 March 2014 07:17, Dietmar Eggemann dietmar.eggem

Re: [RFC 4/6] sched: powerpc: create a dedicated topology table

2014-03-11 Thread Vincent Guittot
On 11 March 2014 11:08, Preeti U Murthy pre...@linux.vnet.ibm.com wrote: Hi Vincent, On 03/05/2014 12:48 PM, Vincent Guittot wrote: Create a dedicated topology table for handling asymetric feature. The current proposal creates a new level which describes which groups of CPUs take adavantge

Re: [PATCH 2/6] sched: rework of sched_domain topology definition

2014-03-11 Thread Vincent Guittot
On 11 March 2014 11:31, Peter Zijlstra pet...@infradead.org wrote: On Thu, Mar 06, 2014 at 04:32:35PM +0800, Vincent Guittot wrote: Never got the new name DIE for CPU? Might confuse people when they use /proc/sys/kernel/sched_domain/cpuX/domainY/name or sched_domain_debug_one(). In fact

[PATCH] sched: fix: remove double calculation in fix_small_imbalance

2014-03-11 Thread Vincent Guittot
The tmp value has been already calculated in: scaled_busy_load_per_task = (busiest-load_per_task * SCHED_POWER_SCALE) / busiest-group_power; Signed-off-by: Vincent Guittot vincent.guit...@linaro.org --- kernel/sched/fair.c | 6 ++ 1 file changed, 2 insertions

<    1   2   3   4   5   6   7   8   9   10   >