Re: [GIT PULL 0/8] Annotation weekly ponies delivery

From: Ingo Molnar
Date: Mon May 14 2012 - 07:56:03 EST



* Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:

> On Sat, 2012-05-12 at 13:40 -0700, Linus Torvalds wrote:
> > The whole "-e cycles:pp" doesn't work any more. I don't get any nice
> > PEBS information, I get the totally useless irq-based profiling.
> >
> > The difference for a "make -j" profile is quite stunning:
> >
> > Doing "perf record -f -e cycles:pp -F 20000 make -j"
> >
> > - my current git:
> >
> > [ perf record: Woken up 47 times to write data ]
> > [ perf record: Captured and wrote 11.890 MB perf.data (~519462 samples) ]
> >
> > - with the above tree pulled into my current git tree (but compiling
> > the same old tree):
> >
> > [ perf record: Woken up 1 times to write data ]
> > [ perf record: Captured and wrote 0.031 MB perf.data (~1375 samples) ]
>
> The output simply suggests we're not getting enough samples
> not that PEBS isn't working, in fact I can could reproduce
> without using PEBS.
>
> This bisected to the below commit, the code has since been
> changed again and all that evlist stuff gives me a head-ache.
> Acme, Namhyung ?
>
> 55261f46702cec96911a81aacfb3cba13434d304 is the first bad commit
> commit 55261f46702cec96911a81aacfb3cba13434d304
> Author: Namhyung Kim <namhyung.kim@xxxxxxx>
> Date: Mon May 7 14:08:59 2012 +0900
>
> perf evlist: Fix creation of cpu map

Another detail seems to be that the bug takes per-task-inherited
profiling. Doing:

perf record -a -e cycles:pp make -j64 bzImage

produces the expected number of events. Without the '-a' the bug
Linus found triggers.

Similarly, 'perf top' does not trigger the bug - because it's
using per CPU, not per task (inherited) profiling.

Thanks,

Ingo
--
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/