Em Sun, Oct 04, 2015 at 01:48:21PM +0200, Milian Wolff escreveu: > Hey all, > > would it be possible to add a feature to perf to only grab callgraphs for a > certain selection of events? E.g. thinking about a lock contention profile of > a Qt application, I'd listen to > > -e syscalls:sys_enter_futex,syscalls:sys_exit_futex > > Now, with the dwarf unwinder this easily produces huge data files in the > order > of gigabytes. This cost could easily be reduced by a factor of two, as one > only needs the callgraphs for syscalls:sys_enter_futex - the TID should be > enough to find the callgraph for the enter event from the exit trace point. > > Could someone guide me in implementing such a feature to make it possible to > filter the events which trigger the collection of a callgraph? Or is that > already possible somehow?
Can you please check if this suits you, it is already in the tree: commit e637d17757a10732fa5d573c18f20b3cd4d31245 Author: He Kuang <heku...@huawei.com> Date: Mon Sep 28 03:52:16 2015 +0000 perf tools: Enable event_config terms to tracepoint events This patch enables config terms for tracepoint perf events. Valid terms for tracepoint events are 'call-graph' and 'stack-size', so we can use different callgraph settings for each event and eliminate unnecessary overhead. Here is an example for using different call-graph config for each tracepoint. $ perf record -e syscalls:sys_enter_write/call-graph=fp/ -e syscalls:sys_exit_write/call-graph=no/ dd if=/dev/zero of=test bs=4k count=10 $ perf report --stdio # # Total Lost Samples: 0 # # Samples: 13 of event 'syscalls:sys_enter_write' # Event count (approx.): 13 # # Children Self Command Shared Object Symbol # ........ ........ ....... .................. ...................... # 76.92% 76.92% dd libpthread-2.20.so [.] __write_nocancel | ---__write_nocancel 23.08% 23.08% dd libc-2.20.so [.] write | ---write | |--33.33%-- 0x2031342820736574 | |--33.33%-- 0xa6e69207364726f | --33.33%-- 0x34202c7320393039 ... # Samples: 13 of event 'syscalls:sys_exit_write' # Event count (approx.): 13 # # Children Self Command Shared Object Symbol # ........ ........ ....... .................. ...................... # 76.92% 76.92% dd libpthread-2.20.so [.] __write_nocancel 23.08% 23.08% dd libc-2.20.so [.] write 7.69% 0.00% dd [unknown] [.] 0x0a6e69207364726f 7.69% 0.00% dd [unknown] [.] 0x2031342820736574 7.69% 0.00% dd [unknown] [.] 0x34202c7320393039 Signed-off-by: He Kuang <heku...@huawei.com> Acked-by: Jiri Olsa <jo...@kernel.org> Cc: Adrian Hunter <adrian.hun...@intel.com> Cc: Kan Liang <kan.li...@intel.com> Cc: Peter Zijlstra <a.p.zijls...@chello.nl> Cc: Wang Nan <wangn...@huawei.com> Cc: pi3or...@163.com Link: http://lkml.kernel.org/r/1443412336-120050-4-git-send-email-heku...@huawei.com Signed-off-by: Arnaldo Carvalho de Melo <a...@redhat.com> -- To unsubscribe from this list: send the line "unsubscribe linux-perf-users" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html