[perfmon2] [RFC] perf/perf_events: misleading number of samples due to mmap()

2010-06-16 Thread Stephane Eranian
Hi, I was using perf record to run various tests and I realized perf output was rather misleading. If you sample a noploop program wich runs for 10s: $ perf record -F 1000 noploop 10 You expect a number of samples around: 10,000. Now if you divide the rate by 4: $ perf record -F 250 noploop

Re: [perfmon2] [RFC] perf/perf_events: misleading number of samples due to mmap()

2010-06-16 Thread Peter Zijlstra
On Wed, 2010-06-16 at 16:40 +0200, Stephane Eranian wrote: > This leads me to another point. For per-thread sampling, why > do we need to record mmap() events happening *outside* of > the process? I can understand the exception of kernel modules. How does that happen? The per-thread events should

Re: [perfmon2] [RFC] perf/perf_events: misleading number of samples due to mmap()

2010-06-16 Thread Peter Zijlstra
On Wed, 2010-06-16 at 16:40 +0200, Stephane Eranian wrote: > The reason is that perf reports an estimate based on the > number of bytes written to the buffer divided by the minimal > sample size of 24 bytes. Right, we should change that based on the PERF_SAMPLE flags used. It will remain an estim

Re: [perfmon2] [RFC] perf/perf_events: misleading number of samples due to mmap()

2010-06-16 Thread stephane eranian
On Wed, Jun 16, 2010 at 4:52 PM, Peter Zijlstra wrote: > On Wed, 2010-06-16 at 16:40 +0200, Stephane Eranian wrote: >> This leads me to another point. For per-thread sampling, why >> do we need to record mmap() events happening *outside* of >> the process? I can understand the exception of kernel

Re: [perfmon2] [RFC] perf/perf_events: misleading number of samples due to mmap()

2010-06-16 Thread stephane eranian
On Wed, Jun 16, 2010 at 6:41 PM, stephane eranian wrote: > On Wed, Jun 16, 2010 at 4:52 PM, Peter Zijlstra wrote: >> On Wed, 2010-06-16 at 16:40 +0200, Stephane Eranian wrote: >>> This leads me to another point. For per-thread sampling, why >>> do we need to record mmap() events happening *outsid

Re: [perfmon2] [RFC] perf/perf_events: misleading number of samples due to mmap()

2010-06-16 Thread Peter Zijlstra
On Wed, 2010-06-16 at 18:41 +0200, stephane eranian wrote: > On Wed, Jun 16, 2010 at 4:52 PM, Peter Zijlstra wrote: > > On Wed, 2010-06-16 at 16:40 +0200, Stephane Eranian wrote: > >> This leads me to another point. For per-thread sampling, why > >> do we need to record mmap() events happening *ou

[perfmon2] [PATCH] perf: avoid synthesizing mmap() for all processes in per-thread mode perf record

2010-06-16 Thread Stephane Eranian
A bug was introduced by commit c45c6ea2e5c57960dc67e00294c2b78e9540c007. Perf record was scanning /proc/PID to create synthetic PERF_RECOR_MMAP entries even though it was running in per-thread mode. There was a bogus check to select what mmaps to synthesize. We only need all processes in system-wi

Re: [perfmon2] [PATCH] perf: avoid synthesizing mmap() for all processes in per-thread mode perf record

2010-06-16 Thread Arnaldo Carvalho de Melo
Em Wed, Jun 16, 2010 at 08:59:01PM +0200, Stephane Eranian escreveu: > A bug was introduced by commit c45c6ea2e5c57960dc67e00294c2b78e9540c007. > > Perf record was scanning /proc/PID to create synthetic PERF_RECOR_MMAP > entries even though it was running in per-thread mode. There was a bogus > ch