Re: [RFC][PATCH 2/2] sched: fair-group: per root-domain load balancing

2008-02-19 Thread Gregory Haskins
Peter Zijlstra wrote: On Fri, 2008-02-15 at 11:46 -0500, Gregory Haskins wrote: but perhaps you can convince me that it is not needed? (i.e. I am still not understanding how the timer guarantees the stability). ok, let me try again. So we take rq->lock, at this point we know rd is

Re: [RFC][PATCH 2/2] sched: fair-group: per root-domain load balancing

2008-02-19 Thread Gregory Haskins
Peter Zijlstra wrote: On Fri, 2008-02-15 at 11:46 -0500, Gregory Haskins wrote: but perhaps you can convince me that it is not needed? (i.e. I am still not understanding how the timer guarantees the stability). ok, let me try again. So we take rq-lock, at this point we know rd is

Re: [RFC][PATCH 2/2] sched: fair-group: per root-domain load balancing

2008-02-15 Thread Peter Zijlstra
On Fri, 2008-02-15 at 11:46 -0500, Gregory Haskins wrote: > Peter Zijlstra wrote: > > > @@ -6342,8 +6351,14 @@ static void rq_attach_root(struct rq *rq > > cpu_clear(rq->cpu, old_rd->span); > > cpu_clear(rq->cpu, old_rd->online); > > > > - if

Re: [RFC][PATCH 2/2] sched: fair-group: per root-domain load balancing

2008-02-15 Thread Gregory Haskins
Peter Zijlstra wrote: Currently the lb_monitor will walk all the domains/cpus from a single cpu's timer interrupt. This will cause massive cache-trashing and cache-line bouncing on larger machines. Split the lb_monitor into root_domain (disjoint sched-domains). Signed-off-by: Peter Zijlstra

Re: [RFC][PATCH 2/2] sched: fair-group: per root-domain load balancing

2008-02-15 Thread Gregory Haskins
Peter Zijlstra wrote: Currently the lb_monitor will walk all the domains/cpus from a single cpu's timer interrupt. This will cause massive cache-trashing and cache-line bouncing on larger machines. Split the lb_monitor into root_domain (disjoint sched-domains). Signed-off-by: Peter Zijlstra

Re: [RFC][PATCH 2/2] sched: fair-group: per root-domain load balancing

2008-02-15 Thread Peter Zijlstra
On Fri, 2008-02-15 at 11:46 -0500, Gregory Haskins wrote: Peter Zijlstra wrote: @@ -6342,8 +6351,14 @@ static void rq_attach_root(struct rq *rq cpu_clear(rq-cpu, old_rd-span); cpu_clear(rq-cpu, old_rd-online); - if

[RFC][PATCH 2/2] sched: fair-group: per root-domain load balancing

2008-02-14 Thread Peter Zijlstra
Currently the lb_monitor will walk all the domains/cpus from a single cpu's timer interrupt. This will cause massive cache-trashing and cache-line bouncing on larger machines. Split the lb_monitor into root_domain (disjoint sched-domains). Signed-off-by: Peter Zijlstra <[EMAIL PROTECTED]> CC:

[RFC][PATCH 2/2] sched: fair-group: per root-domain load balancing

2008-02-14 Thread Peter Zijlstra
Currently the lb_monitor will walk all the domains/cpus from a single cpu's timer interrupt. This will cause massive cache-trashing and cache-line bouncing on larger machines. Split the lb_monitor into root_domain (disjoint sched-domains). Signed-off-by: Peter Zijlstra [EMAIL PROTECTED] CC: