Re: [RFC/PATCHSET 0/6] perf tools: Support dynamic sort keys for tracepoints (v1)

From: Namhyung Kim
Date: Mon Dec 14 2015 - 20:42:38 EST


Hi David and Arnaldo,

On Mon, Dec 14, 2015 at 03:32:06PM -0700, David Ahern wrote:
> On 12/14/15 10:47 AM, Arnaldo Carvalho de Melo wrote:
> >>With dynamic sort keys, you can use <event.field> as a sort key. Those
> >>dynamic keys are checked and created on demand. For instance, below is
> >>to sort by next_pid field on the same data file.
> >>
> >> $ perf report -s comm,sched:sched_switch.next_pid --stdio
> >> ...
> >> # Overhead Command next_pid
> >> # ........ ............... ..........
> >> #
> >> 21.23% transmission-gt 0
> >> 20.86% swapper 17773
> >> 6.62% netctl-auto 0
> >> 5.25% swapper 109
> >> 5.21% kworker/0:1H 0
> >> 1.98% Xephyr 0
> >> 1.98% swapper 6524
> >> 1.98% swapper 27478
> >> 1.37% swapper 27476
> >> 1.17% swapper 233
> >>
> >>Multiple dynamic sort keys are also supported:
> >>
> >> $ perf report -s comm,sched:sched_switch.next_pid,sched:sched_switch.next_comm --stdio
> >> ...
> >> # Overhead Command next_pid next_comm
> >> # ........ ............... .......... ................
> >> #
> >> 20.86% swapper 17773 transmission-gt
> >> 9.64% transmission-gt 0 swapper/0
> >> 9.16% transmission-gt 0 swapper/2
> >> 5.25% swapper 109 kworker/0:1H
> >> 5.21% kworker/0:1H 0 swapper/0
> >> 2.14% netctl-auto 0 swapper/2
> >> 1.98% netctl-auto 0 swapper/0
> >> 1.98% swapper 6524 Xephyr
> >> 1.98% swapper 27478 netctl-auto
> >> 1.78% transmission-gt 0 swapper/3
> >> 1.53% Xephyr 0 swapper/0
> >> 1.29% netctl-auto 0 swapper/1
> >> 1.29% swapper 27476 netctl-auto
> >> 1.21% netctl-auto 0 swapper/3
> >> 1.17% swapper 233 irq/33-iwlwifi
> >>
> >>Note that pid 0 exists for each cpu so have comm of 'swapper/N'.
> >
> >>This is available on 'perf/dynamic-sort-v1' branch in my tree
> >>
> >> git://git.kernel.org/pub/scm/linux/kernel/git/namhyung/linux-perf.git
> >>
> >>Any comments are welcome, thanks!
> >>Namhyung
> >
> >I'll look at the patches for style, but the idea is so nice and natural
> >I thought about blind merging it :-)

Hehe, thanks!


>
> yes, that is a cool feature.
>
> For scheduling tracepoints the analysis could be added to perf-sched to ease
> the burden of the command line syntax.

Yes, the existing tracepoints analysis command might use or wrap it.

For command line syntax, I think it'd be better to provide shorter way
to identify the events - like (non-ambiguous) substring match or
positional parameter (e.g. %1 for first event).

For example, the last example above can be:

$ perf report -s comm,switch.next_pid,switch.next_comm

or

$ perf report -s comm,%1.next_pid,%1.next_comm


Thanks,
Namhyung
--
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/