Re: [PATCH v3]: perf record: enable arbitrary event names thru name= modifier

From: Jiri Olsa
Date: Mon Jun 04 2018 - 03:56:13 EST


On Mon, Jun 04, 2018 at 09:50:56AM +0300, Alexey Budankov wrote:
>
> Enable complex event names containing [.:=,] symbols to be encoded into Perf
> trace using name= modifier e.g. like this:
>
> perf record -e cpu/name=\'OFFCORE_RESPONSE:request=DEMAND_RFO:response=L3_HIT.SNOOP_HITM\',\
> period=0x3567e0,event=0x3c,cmask=0x1/Duk ./futex
>
> Below is how it looks like in the report output. Please note explicit escaped
> quoting at cmdline string in the header so that thestring can be directly reused
> for another collection in shell:
>
> perf report --header
>
> # ========
> ...
> # cmdline : /root/abudanko/kernel/tip/tools/perf/perf record -v -e cpu/name=\'OFFCORE_RESPONSE:request=DEMAND_RFO:response=L3_HIT.SNOOP_HITM\',period=0x3567e0,event=0x3c,cmask=0x1/Duk ./futex
> # event : name = OFFCORE_RESPONSE:request=DEMAND_RFO:response=L3_HIT.SNOOP_HITM, , type = 4, size = 112, config = 0x100003c, { sample_period, sample_freq } = 3500000, sample_type = IP|TID|TIME, disabled = 1, inh
> ...
> # ========
> #
> #
> # Total Lost Samples: 0
> #
> # Samples: 24K of event 'OFFCORE_RESPONSE:request=DEMAND_RFO:response=L3_HIT.SNOOP_HITM'
> # Event count (approx.): 86492000000
> #
> # Overhead Command Shared Object Symbol
> # ........ ....... ................ ..............................................
> #
> 14.75% futex [kernel.vmlinux] [k] __entry_trampoline_start
> ...
>
> perf stat -e cpu/name=\'CPU_CLK_UNHALTED.THREAD:cmask=0x1\',period=0x3567e0,event=0x3c,cmask=0x1/Duk ./futex
>
> 10000000 process context switches in 16678890291ns (1667.9ns/ctxsw)
>
> Performance counter stats for './futex':
>
> 88,095,770,571 CPU_CLK_UNHALTED.THREAD:cmask=0x1
>
> 16.679542407 seconds time elapsed
>
> Signed-off-by: Alexey Budankov <alexey.budankov@xxxxxxxxxxxxxxx>
> ---
> Changes in v3:
> - updated event name syntax in perf list docs;
> - added name modifier description into perf record docs;
>

Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>

thanks,
jirka