Messages in this thread |  | | Subject | Re: [patch v4 05/18] sched: quicker balancing on fork/exec/wake | From | Peter Zijlstra <> | Date | Tue, 12 Feb 2013 11:22:45 +0100 |
| |
On Thu, 2013-01-24 at 11:06 +0800, Alex Shi wrote: > Guess the search cpu from bottom to up in domain tree come from > commit 3dbd5342074a1e sched: multilevel sbe sbf, the purpose is > balancing over tasks on all level domains. > > This balancing cost too much if there has many domain/groups in a > large system. > > If we remove this code, we will get quick fork/exec/wake with a > similar > balancing result amony whole system. > > This patch increases 10+% performance of hackbench on my 4 sockets > SNB machines and about 3% increasing on 2 sockets servers. > > Numbers be groovy.. still I'd like a little more on the behavioural change. Expand on what exactly is lost by this change so that if we later find a regression we have a better idea of what and how.
For instance, note how find_idlest_group() isn't symmetric wrt local_group. So by not doing the domain iteration we change things.
Now, it might well be that all this is somewhat overkill as it is, but should we then not replace all of it with a simple min search over all eligible cpus; that would be a real clean up.
|  |