[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <c71b197a-3121-7821-e74c-a2200e03bd05@huawei.com>
Date: Thu, 17 Oct 2019 14:08:21 +0800
From: Tan Xiaojun <tanxiaojun@...wei.com>
To: James Clark <James.Clark@....com>,
Jeremy Linton <Jeremy.Linton@....com>,
"peterz@...radead.org" <peterz@...radead.org>,
"mingo@...hat.com" <mingo@...hat.com>,
"acme@...nel.org" <acme@...nel.org>,
"alexander.shishkin@...ux.intel.com"
<alexander.shishkin@...ux.intel.com>,
"jolsa@...hat.com" <jolsa@...hat.com>,
"namhyung@...nel.org" <namhyung@...nel.org>,
"ak@...ux.intel.com" <ak@...ux.intel.com>,
"adrian.hunter@...el.com" <adrian.hunter@...el.com>,
"yao.jin@...ux.intel.com" <yao.jin@...ux.intel.com>,
"tmricht@...ux.ibm.com" <tmricht@...ux.ibm.com>,
"brueckner@...ux.ibm.com" <brueckner@...ux.ibm.com>,
"songliubraving@...com" <songliubraving@...com>,
"gregkh@...uxfoundation.org" <gregkh@...uxfoundation.org>,
Kim Phillips <Kim.Phillips@....com>
CC: "gengdongjiu@...wei.com" <gengdongjiu@...wei.com>,
"wxf.wang@...ilicon.com" <wxf.wang@...ilicon.com>,
"liwei391@...wei.com" <liwei391@...wei.com>,
"huawei.libin@...wei.com" <huawei.libin@...wei.com>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
"linux-perf-users@...r.kernel.org" <linux-perf-users@...r.kernel.org>,
"Al Grant" <Al.Grant@....com>, nd <nd@....com>
Subject: Re: [RFC PATCH 2/3] perf tools: Add support for "report" for some spe
events
On 2019/10/17 9:51, Tan Xiaojun wrote:
> On 2019/10/16 18:12, James Clark wrote:
>> Hi Xiaojun,
>>
>>>>
>>>> What do you mean when the user specifies "event:pp", if the SPE is available, configure and record the spe data directly via the perf event open syscall?
>>>> (perf.data itself is the same as using -e arm_spe_0//xxx?)
>>>
>>> I mean, for the perf record, if the user does not add ":pp" to these events, the original process is taken, and if ":pp" is added, the spe process is taken.
>>>
>>
>> Yes we think this is the best way to do it considering that SPE has been implemented as a separate PMU and it will be very difficult to do it in the Kernel when the precise_ip attribute is set.
>>
>> I think doing everything in userspace is easiest. This will at least mean that users of Perf don't have to be aware of the details of SPE to get precise sample data.
>>
>> So if the user specifies "event:p" when SPE is available, the SPE PMU is automatically configured data is recorded. If the user also specifies -e arm_spe_0//xxx and wants to do some manual configuration, then that could override the automatic configuration.
>>
>>
>> James
>>
>>
>>
>
> OK. I got it.
>
> I found a bug in the test. If I specify cpu_list(use -a or -C) when logging spe data, some events with "pid:0 tid:0" is logged. This is obviously wrong.
>
> I want to solve this problem, but I haven't found out what went wrong.
>
> --------------------------------------------------------------
> [root@...ver121 perf]# perf record -e arm_spe_0/branch_filter=1,ts_enable=1,pa_enable=1,load_filter=1,jitter=0,store_filter=1,min_latency=0/ -a
Sorry, it should add "--all-user" here, and finally there will still be some "pid:0" events in spe_dump.out.
(And if kernel event is included, then "pid:0" is not a problem)
This causes the pc address of some spe sampled data to be untranslated because the wrong pid/tid is obtained from here.
Thanks.
Xiaojun.
> [ perf record: Woken up 1 times to write data ]
> [ perf record: Captured and wrote 7.925 MB perf.data ]
> [root@...ver121 perf]# perf report -D > spe_dump.out
> [root@...ver121 perf]# vim spe_dump.out
>
> --------------------------------------------------------------
> ...
> 0xd0330 [0x30]: event: 12
> .
> . ... raw event: size 48 bytes
> . 0000: 0c 00 00 00 00 00 30 00 00 00 00 00 00 00 00 00 ......0.........
> . 0010: 00 00 00 00 00 00 00 00 f8 d9 fe bd f7 08 02 00 ................
> . 0020: 00 00 00 00 00 00 00 00 4c bc 14 00 00 00 00 00 ........L.......
>
> 0 572810090961400 0xd0330 [0x30]: PERF_RECORD_ITRACE_START pid: 0 tid: 0
>
> 0xd0438 [0x30]: event: 12
> .
> . ... raw event: size 48 bytes
> . 0000: 0c 00 00 00 00 00 30 00 00 00 00 00 00 00 00 00 ......0.........
> . 0010: 00 00 00 00 00 00 00 00 d8 ef fe bd f7 08 02 00 ................
> . 0020: 01 00 00 00 00 00 00 00 4d bc 14 00 00 00 00 00 ........M.......
>
> 1 572810090967000 0xd0438 [0x30]: PERF_RECORD_ITRACE_START pid: 0 tid: 0
> ...
> --------------------------------------------------------------
>
> Thanks.
> Xiaojun.
>
>
> .
>
Powered by blists - more mailing lists