Messages in this thread |  | | Date | Sat, 12 Mar 2022 10:54:57 -0300 | From | Arnaldo Carvalho de Melo <> | Subject | Re: [PATCH] perf parse: Fix event parser error for hybrid systems |
| |
Em Mon, Mar 07, 2022 at 11:16:27PM +0800, zhengjun.xing@linux.intel.com escreveu: > From: Zhengjun Xing <zhengjun.xing@linux.intel.com> > > This bug happened on hybrid systems when both cpu_core and cpu_atom > have the same event name such as "UOPS_RETIRED.MS" while their event > terms are different, then during perf stat, the event for cpu_atom > will parse fail and then no output for cpu_atom. > > UOPS_RETIRED.MS -> cpu_core/period=0x1e8483,umask=0x4,event=0xc2,frontend=0x8/ > UOPS_RETIRED.MS -> cpu_atom/period=0x1e8483,umask=0x1,event=0xc2/ > > It is because event terms in the "head" of parse_events_multi_pmu_add > will be changed to event terms for cpu_core after parsing UOPS_RETIRED.MS > for cpu_core, then when parsing the same event for cpu_atom, it still > uses the event terms for cpu_core, but event terms for cpu_atom are > different with cpu_core, the event parses for cpu_atom will fail. This > patch fixes it, the event terms should be parsed from the original > event. > > This patch can work for the hybrid systems that have the same event > in more than 2 PMUs. It also can work in non-hybrid systems. > > Before: > > #perf stat -v -e UOPS_RETIRED.MS -a sleep 1 > > Using CPUID GenuineIntel-6-97-1 > UOPS_RETIRED.MS -> cpu_core/period=0x1e8483,umask=0x4,event=0xc2,frontend=0x8/ > Control descriptor is not initialized > UOPS_RETIRED.MS: 2737845 16068518485 16068518485 > > Performance counter stats for 'system wide': > > 2,737,845 cpu_core/UOPS_RETIRED.MS/ > > 1.002553850 seconds time elapsed > > After: > > #perf stat -v -e UOPS_RETIRED.MS -a sleep 1 > > Using CPUID GenuineIntel-6-97-1 > UOPS_RETIRED.MS -> cpu_core/period=0x1e8483,umask=0x4,event=0xc2,frontend=0x8/ > UOPS_RETIRED.MS -> cpu_atom/period=0x1e8483,umask=0x1,event=0xc2/ > Control descriptor is not initialized > UOPS_RETIRED.MS: 1977555 16076950711 16076950711 > UOPS_RETIRED.MS: 568684 8038694234 8038694234
Thanks, applied.
- Arnaldo
|  |