Re: [PATCH RFC V9 2/3] perf,tools: per-event callgraph support

From: Arnaldo Carvalho de Melo
Date: Sat Aug 08 2015 - 13:36:14 EST


Em Sat, Aug 08, 2015 at 06:45:39PM +0200, Jiri Olsa escreveu:
> On Fri, Aug 07, 2015 at 12:49:38PM -0300, Arnaldo Carvalho de Melo wrote:
> > Em Fri, Aug 07, 2015 at 12:38:43PM -0300, Arnaldo Carvalho de Melo escreveu:
> > > Em Thu, Aug 06, 2015 at 03:44:53PM -0400, kan.liang@xxxxxxxxx escreveu:
> > > > From: Kan Liang <kan.liang@xxxxxxxxx>
> > > > Here are some examples and test results.
> > > >
> > > > 1. Comparing the elapsed time and perf.data size from "kernbench -M -H".
> > > >
> > > > The test command for FULL callgraph and time support.
> > > > "perf record -e
> > > > '{cpu/cpu-cycles,period=100000/,cpu/instructions,period=20000/p}'
> > > > --call-graph fp --time"
> >
> > Some other oddity I noticed while testing:
> >
>
> SNIP
>
> > This is in the 'perf report' TUI, why, for an event with 'callgraph=no', we
> > get callchains? How come?
> >
> > If I try it with the --stdio, well, its there as well:
> >
> > # Samples: 2K of event 'cpu/instructions,call-graph=no,time=0,period=20000/p'
> > # Event count (approx.): 46956518
> > #
> > # Children Self Command Shared Object Symbol
> > # ........ ........ ............... .......................... ..............................................
> > #
> > 67.56% 0.00% qemu-system-x86 [unknown] [.] 0xad5e258d4c544155
> > |
> > ---0xad5e258d4c544155
> >
> > 67.56% 0.00% qemu-system-x86 libc-2.20.so [.] __libc_start_main
> > |
> > ---__libc_start_main
> > 0xad5e258d4c544155
> >
> > 67.56% 0.00% qemu-system-x86 perf [.] main
> > |
> > ---main
> > __libc_start_main
> > 0xad5e258d4c544155
> >
> > 67.56% 0.00% qemu-system-x86 perf [.] run_builtin
> > |
> > ---run_builtin
> > main
> > __libc_start_main
> > 0xad5e258d4c544155
> >
> > Can you take a look? What I have, i.e. the patches from Jiri and Kan
> > moving stuff out of the way of the python binding and this patch is at
> > the tmp.perf/core branch in my git tree:
> >
> > git://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git
>
> hum, tried this branch and got proper behaviour for both stdio and TUI,
> attaching stdio output
>
> the record command was:
> $ ./perf record -e 'cpu/cpu-cycles,call-graph=fp,time,period=10000/pp,cpu/instructions,call-graph=no,time=0,period=20000/p' ls
>
> got the events strings from your report output.. what was different in your record command?

Was in my message, here it is:

# cmdline : /home/acme/bin/perf record -e {cpu/cpu-cycles,call-graph=fp,time,period=10000/pp,cpu/instructions,call-graph=no,time=0,period=20000/p}
-a

I'll try this again later.

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