Messages in this thread | | | Subject | Re: [PATCH] Don't apply for write lock on tasklist_lock if parent doesn't ptrace other processes | From | "Zhang, Yanmin" <> | Date | Mon, 26 Jul 2010 13:05:31 +0800 |
| |
On Fri, 2010-07-23 at 19:34 +0200, Oleg Nesterov wrote: > On 07/23, Zhang, Yanmin wrote: > > > > On Thu, 2010-07-22 at 11:05 +0200, Oleg Nesterov wrote: > > > I am not surpized perf blaims tasklist, but I am really surpized this patch > > > adds 10% improvement... > > I changed aim7 workfile to focus on fork/exec and other a couple of sub-cases. > > And this behavior is clear on 8-socket machines. > > Thanks... > > > After applying my patch (although it's incorrect as there is a race with TRACEME), > > perf shows write_lock_irq in forget_original_parent consumes less than 40% cpu time on > > 8-socket machine. > > Any chance you can test the patch I sent? It should have the same effect, > otherwise there is something interesting. 1) with my patch, we got about 13% improvement; 2) With your patch, we got about 11% improvement;
Performance is very sensitive to spinlock contention on large machines.
> > > Is it possible to optimize it to use finer locks instead of the global tasklist_lock? > > Heh. We must optimize it. But it is not clear when ;) Thanks. It's better to remove the big lock.
| |