Re: [PATCH] perf tool: Fix ppid for synthesized fork events

From: Arnaldo Carvalho de Melo
Date: Wed Mar 25 2015 - 09:24:16 EST


Em Wed, Mar 25, 2015 at 08:22:34AM -0400, Joe Mario escreveu:
> On 03/24/2015 05:12 PM, David Ahern wrote:
> >On 3/24/15 2:10 PM, Don Zickus wrote:
> >>He does this with and without the patch. The difference is usually
> >>over 50% extra time with the patch for both the record timings and
> >>report timings.:-(

> >I find that shocking. The patch only populates ppid and ptid with a
> >value read from the file that is already opened and processed. Most
> >of the patch is just plumbing the value from the low level function
> >that processes the status file back to synthesize_fork.

> >What benchmark is this? Is it something I can download and run? if so, details? site, command, args?

> Hi David:

> We ran "time perf mem record -a -e cpu/mem-loads,ldlat=50/pp -e
> cpu/mem-stores/pp sleep 10" on a system that was running SPECjbb2013
> in the background. There were about 10,000 java threads with about
> 500 to 800 in a runnable state at any given time. We ran it on a 4
> socket x86 IVB server.

So it starts when there are tons of threads in the system, for which
synthezing from /proc will have to take place, without looking again at
that patch, I can't think about what would be a problem :-\

> We had two perf binaries. One with your patch and one without it.
> Because the benchmark doesn't always have a constant load, we ran the
> above perf command in a loop alternating between the patched and
> unpatched version. The elapsed wall clock times ("real" field from
> time) for the perf with your patch was typically >= 50% longer than
> the equivalent unpatched perf.

> We can't give out a copy of the SPEC benchmark (part of the SPEC
> agreement). Try to find some application (or create your own) to load
> the system with lots of busy threads.

Haven't tried, but head this is something that could perhaps be useful
here:

http://kernel.ubuntu.com/~cking/stress-ng/

- Arnaldo
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/