[PATCH] perf vendor events power10: Update JSON/events
kajoljain
kjain at linux.ibm.com
Thu Aug 1 17:33:44 AEST 2024
On 8/1/24 01:44, Arnaldo Carvalho de Melo wrote:
> On Wed, Jul 31, 2024 at 04:44:49PM -0300, Arnaldo Carvalho de Melo wrote:
>> On Fri, Jul 26, 2024 at 11:08:55AM -0300, Arnaldo Carvalho de Melo wrote:
>>> On Tue, Jul 23, 2024 at 09:02:23AM -0700, Ian Rogers wrote:
>>>> On Mon, Jul 22, 2024 at 10:27 PM Kajol Jain <kjain at linux.ibm.com> wrote:
>>>>>
>>>>> Update JSON/events for power10 platform with additional events.
>>>>> Also move PM_VECTOR_LD_CMPL event from others.json to
>>>>> frontend.json file.
>>>>>
>>>>> Signed-off-by: Kajol Jain <kjain at linux.ibm.com>
>>>>
>>>> Reviewed-by: Ian Rogers <irogers at google.com>
>>>
>>> Thanks, applied to tmp.perf-tools-next,
>>
>> This seems to be causing this:
>>
>> Exception processing pmu-events/arch/powerpc/power10/others.json
>> Traceback (most recent call last):
>> File "pmu-events/jevents.py", line 1309, in <module>
>> main()
>> File "pmu-events/jevents.py", line 1291, in main
>> ftw(arch_path, [], preprocess_one_file)
>> File "pmu-events/jevents.py", line 1241, in ftw
>> ftw(item.path, parents + [item.name], action)
>> File "pmu-events/jevents.py", line 1239, in ftw
>> action(parents, item)
>> File "pmu-events/jevents.py", line 623, in preprocess_one_file
>> for event in read_json_events(item.path, topic):
>> File "pmu-events/jevents.py", line 440, in read_json_events
>> events = json.load(open(path), object_hook=JsonEvent)
>> File "/usr/lib/python3.6/json/__init__.py", line 296, in load
>> CC /tmp/build/perf/bench/evlist-open-close.o
>> return loads(fp.read(),
>> File "/usr/lib/python3.6/encodings/ascii.py", line 26, in decode
>> return codecs.ascii_decode(input, self.errors)[0]
>> UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 9231: ordinal not in range(128)
>> pmu-events/Build:35: recipe for target '/tmp/build/perf/pmu-events/pmu-events.c' failed
>> make[3]: *** [/tmp/build/perf/pmu-events/pmu-events.c] Error 1
>> make[3]: *** Deleting file '/tmp/build/perf/pmu-events/pmu-events.c'
>> Makefile.perf:763: recipe for target '/tmp/build/perf/pmu-events/pmu-events-in.o' failed
>> make[2]: *** [/tmp/build/perf/pmu-events/pmu-events-in.o] Error 2
>> make[2]: *** Waiting for unfinished jobs....
>> CC /tmp/build/perf/tests/hists_cumulate.o
>> CC /tmp/build/perf/arch/powerpc/util/event.o
>> CC /tmp/build/perf/bench/breakpoint.o
>> CC /tmp/build/perf/builtin-data.o
>>
>>
>> This happened in the past, I'm now trying to figure this out :-\
>>
>> This was in:
>>
>> toolsbuilder at five:~$ cat dm.log/ubuntu:18.04-x-powerpc
>>
>>
>> So 32-bit powerpc, ubuntu 18.04
>
> This did the trick, so I fixed it in my repo, please ack, just replacing
> ’ with ' :-\
>
> - Arnaldo
>
Hi Arnaldo,
Thanks for fixing it. I will make sure in next series of patches, we
are also checking for this combination to avoid ascii issue.
Change looks fine to me.
Thanks,
Kajol Jain
>
> diff --git a/tools/perf/pmu-events/arch/powerpc/power10/others.json b/tools/perf/pmu-events/arch/powerpc/power10/others.json
> index 53ca610152faa237..3789304cb363bbb7 100644
> --- a/tools/perf/pmu-events/arch/powerpc/power10/others.json
> +++ b/tools/perf/pmu-events/arch/powerpc/power10/others.json
> @@ -197,6 +197,6 @@
> {
> "EventCode": "0x0B0000026880",
> "EventName": "PM_L2_SNP_TLBIE_SLBIE_DELAY",
> - "BriefDescription": "Cycles when a TLBIE/SLBIEG/SLBIAG that targets this thread's LPAR was in flight while in a hottemp condition. Multiply this count by 1000 to obtain the total number of cycles. This can be divided by PM_L2_SNP_TLBIE_SLBIE_START to obtain the overall efficiency. Note: ’inflight’ means SnpTLB has been sent to core(ie doesn’t include when SnpTLB is in NCU waiting to be launched serially behind different SnpTLB). The NCU Snooper gets in a ’hottemp’ delay window when it detects it is above its TLBIE/SLBIE threshold for process SnpTLBIE/SLBIE with this core. Event count should be multiplied by 2 since the data is coming from a 2:1 clock domain and the data is time sliced across all 4 threads."
> + "BriefDescription": "Cycles when a TLBIE/SLBIEG/SLBIAG that targets this thread's LPAR was in flight while in a hottemp condition. Multiply this count by 1000 to obtain the total number of cycles. This can be divided by PM_L2_SNP_TLBIE_SLBIE_START to obtain the overall efficiency. Note: 'inflight' means SnpTLB has been sent to core(ie doesn't include when SnpTLB is in NCU waiting to be launched serially behind different SnpTLB). The NCU Snooper gets in a 'hottemp' delay window when it detects it is above its TLBIE/SLBIE threshold for process SnpTLBIE/SLBIE with this core. Event count should be multiplied by 2 since the data is coming from a 2:1 clock domain and the data is time sliced across all 4 threads."
> }
> ]
>
More information about the Linuxppc-dev
mailing list