1. 06 Oct, 2022 40 commits
    • Carsten Haitzler's avatar
      perf test: Add git ignore for perf data generated by the ARM CoreSight tests · 6ea586b1
      Carsten Haitzler authored
      Ignore perf output data files generated by perf tests for cleaner git
      status.
      Reviewed-by: default avatarJames Clark <james.clark@arm.com>
      Signed-off-by: default avatarCarsten Haitzler <carsten.haitzler@arm.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: coresight@lists.linaro.org
      Link: https://lore.kernel.org/r/20220909152803.2317006-6-carsten.haitzler@foss.arm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      6ea586b1
    • Carsten Haitzler's avatar
      perf test: Add arm64 asm pureloop test shell script · fdc25cc5
      Carsten Haitzler authored
      Add a script to drive the asm pureloop test for arm64/CoreSight that
      gathers data so it passes a minimum bar for amount and quality of
      content that we extract from the kernel's perf support.
      
      Committer notes:
      
      Add the install of tests/shell/coresight/*.sh to
      tools/perf/Makefile.perf as we're starting to populate that dir.
      Reviewed-by: default avatarJames Clark <james.clark@arm.com>
      Signed-off-by: default avatarCarsten Haitzler <carsten.haitzler@arm.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: coresight@lists.linaro.org
      Link: https://lore.kernel.org/r/20220909152803.2317006-5-carsten.haitzler@foss.arm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      fdc25cc5
    • Carsten Haitzler's avatar
      perf test: Add asm pureloop test tool · 8b975197
      Carsten Haitzler authored
      Add test tool to be driven by further test scripts. This tool is pure
      arm64 ASM with no libc usage to ensure it is the same exact binary/code
      every time so it can also be re-used for many uses. It just loops for a
      given fixed number of loops.
      Reviewed-by: default avatarJames Clark <james.clark@arm.com>
      Signed-off-by: default avatarCarsten Haitzler <carsten.haitzler@arm.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: coresight@lists.linaro.org
      Link: https://lore.kernel.org/r/20220909152803.2317006-4-carsten.haitzler@foss.arm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      8b975197
    • Carsten Haitzler's avatar
      perf test: Add build infra for perf test tools for ARM CoreSight tests · 34bec35c
      Carsten Haitzler authored
      This adds the initial build infrastructure (makefiles maintainers
      information) for adding follow-on tests for CoreSight.
      
      Committer notes:
      
      Remove the installation of tests/shell/coresight/*.sh, as there are no
      files there yet and thus, at this point, make install fails.
      
      Use $(QUIET_CLEAN) to avoid having extraneous output in the 'make clean'
      output.
      
      Also use @$(MAKE) in tools/perf/tests/shell/coresight/Makefile as $(Q)
      is not turning into @ when V=1 isn't used, i.e. in the default case it
      is not being quiet.
      
      The >/dev/null in the all for tools/perf/tests/shell/coresight/Makefile
      is to avoid this:
      
        make[4]: Nothing to be done for 'all'.
        make[4]: Nothing to be done for 'all'.
        make[4]: Nothing to be done for 'all'.
          DESCEND plugins
          GEN     /tmp/build/perf/python/perf.so
        make[4]: Nothing to be done for 'all'.
          INSTALL trace_plugins
      
      On !arm64 where nothing is done on the main target for
      tools/perf/tests/shell/coresight/*/Makefile.
      Signed-off-by: default avatarCarsten Haitzler <carsten.haitzler@arm.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: coresight@lists.linaro.org
      Link: http://lore.kernel.org/lkml/20220909152803.2317006-3-carsten.haitzler@foss.arm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      34bec35c
    • Carsten Haitzler's avatar
      perf test: Add CoreSight shell lib shared code for future tests · c63317ab
      Carsten Haitzler authored
      This adds a library of shell "code" to be shared and used by future
      tests that target quality testing for Arm CoreSight support in perf
      and the Linux kernel.
      Signed-off-by: default avatarCarsten Haitzler <carsten.haitzler@arm.com>
      Reviewed-by: default avatarJames Clark <james.clark@arm.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
      Cc: Mike Leach <mike.leach@linaro.org>
      Cc: Suzuki Poulouse <suzuki.poulose@arm.com>
      Cc: coresight@lists.linaro.org
      Link: http://lore.kernel.org/lkml/20220909152803.2317006-2-carsten.haitzler@foss.arm.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      c63317ab
    • Leo Yan's avatar
      perf test: Introduce script for data symbol testing · 60abedb8
      Leo Yan authored
      The test is designed with a data structure with 64-byte alignment, it
      has two fields "data1" and "data2", and other fields are reserved.
      
      Using the "perf mem" command, we can record and report memory samples
      for a self-contained workload with 1 second duration.  If no samples are
      obtained for the data structure "buf1", it reports failure;  and by
      checking the offset in structure "buf1", if the memory samples aren't
      for the "data1" and "data2" fields, it means wrong data symbol parsing
      and returns failure.
      
      Committer testing:
      
        [root@quaco ~]# grep -m1 "model name" /proc/cpuinfo
        model name	: Intel(R) Core(TM) i7-8650U CPU @ 1.90GHz
        [root@quaco ~]#
        [root@quaco ~]# perf test -v "data symbol"
        104: Test data symbol                                                :
        --- start ---
        test child forked, pid 192318
        Compiling test program...
        Recording workload...
        [ perf record: Woken up 2 times to write data ]
        [ perf record: Captured and wrote 0.389 MB /tmp/__perf_test.perf.data.LIuQl (5570 samples) ]
        Cleaning up files...
        test child finished with 0
        ---- end ----
        Test data symbol: Ok
        [root@quaco ~]#
      Signed-off-by: default avatarLeo Yan <leo.yan@linaro.org>
      Tested-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Ravi Bangoria <ravi.bangoria@amd.com>
      Link: https://lore.kernel.org/r/20221006101039.47870-1-leo.yan@linaro.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      60abedb8
    • Namhyung Kim's avatar
      perf record: Save DSO build-ID for synthesizing · fd643afc
      Namhyung Kim authored
      When synthesizing MMAP2 with build-id, it'd read the same file repeatedly as
      it has no idea if it's done already.  Maintain a dsos to check that and skip
      the file access if possible.
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https://lore.kernel.org/r/20220920222822.2171056-2-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      fd643afc
    • Namhyung Kim's avatar
      perf stat: Rename to aggr_cpu_id.thread_idx · fa2edc07
      Namhyung Kim authored
      The aggr_cpu_id has a thread value but it's actually an index to the
      thread_map.  To reduce possible confusion, rename it to thread_idx.
      Suggested-by: default avatarIan Rogers <irogers@google.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20220930202110.845199-8-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      fa2edc07
    • Namhyung Kim's avatar
      perf stat: Don't compare runtime stat for shadow stats · 01b8957b
      Namhyung Kim authored
      Now it always uses the global rt_stat.  Let's get rid of the field from
      the saved_value.  When the both evsels are NULL, it'd return 0 so remove
      the block in the saved_value_cmp.
      Reviewed-by: default avatarJames Clark <james.clark@arm.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20220930202110.845199-7-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      01b8957b
    • Namhyung Kim's avatar
      perf stat: Kill unused per-thread runtime stats · f407aac4
      Namhyung Kim authored
      Now it's using the global rt_stat, no need to use per-thread stats.  Let
      get rid of them.
      Reviewed-by: default avatarJames Clark <james.clark@arm.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20220930202110.845199-6-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      f407aac4
    • Namhyung Kim's avatar
      perf stat: Use thread map index for shadow stat · 87ae87fd
      Namhyung Kim authored
      When AGGR_THREAD is active, it aggregates the values for each thread.
      Previously it used cpu map index which is invalid for AGGR_THREAD so
      it had to use separate runtime stats with index 0.
      
      But it can just use the rt_stat with thread_map_index.  Rename the
      first_shadow_map_idx() and make it return the thread index.
      Reviewed-by: default avatarJames Clark <james.clark@arm.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20220930202110.845199-5-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      87ae87fd
    • Namhyung Kim's avatar
      perf stat: Rename saved_value->cpu_map_idx · dfca2d69
      Namhyung Kim authored
      The cpu_map_idx fields is just to differentiate values from other
      entries.  It doesn't need to be strictly cpu map index.  Actually we can
      pass thread map index or aggr map index.  So rename the fields first.
      
      No functional change intended.
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20220930202110.845199-4-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      dfca2d69
    • Namhyung Kim's avatar
      perf stat: Don't call perf_stat_evsel_id_init() repeatedly · 429b8e84
      Namhyung Kim authored
      evsel__reset_stat_priv() is called more than once if user gave -r option
      for multiple runs.  But it doesn't need to re-initialize the id.
      Reviewed-by: default avatarJames Clark <james.clark@arm.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20220930202110.845199-3-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      429b8e84
    • Namhyung Kim's avatar
      perf stat: Convert perf_stat_evsel.res_stats array · 66b76e30
      Namhyung Kim authored
      It uses only one member, no need to have it as an array.
      Reviewed-by: default avatarJames Clark <james.clark@arm.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Adrian Hunter <adrian.hunter@intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20220930202110.845199-2-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      66b76e30
    • Namhyung Kim's avatar
      perf tools: Remove special handling of system-wide evsel · 1337b9dc
      Namhyung Kim authored
      For system-wide evsels, the thread map should be dummy - i.e. it has a
      single entry of -1.  But the code guarantees such a thread map, so no
      need to handle it specially.
      
      No functional change intended.
      Reviewed-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https://lore.kernel.org/r/20221003204647.1481128-6-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      1337b9dc
    • Namhyung Kim's avatar
      perf tools: Add evlist__add_sched_switch() · 182bb594
      Namhyung Kim authored
      Add a help to create a system-wide sched_switch event.  One merit is
      that it sets the system-wide bit before adding it to evlist so that
      the libperf can handle the cpu and thread maps correctly.
      Reviewed-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https://lore.kernel.org/r/20221003204647.1481128-5-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      182bb594
    • Namhyung Kim's avatar
      perf tools: Get rid of evlist__add_on_all_cpus() · 60ea006f
      Namhyung Kim authored
      The cpu and thread maps are properly handled in libperf now.  No need to
      do it in the perf tools anymore.  Let's remove the logic.
      Reviewed-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https://lore.kernel.org/r/20221003204647.1481128-4-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      60ea006f
    • Namhyung Kim's avatar
      libperf: Propagate maps only if necessary · 7e2450bb
      Namhyung Kim authored
      The current code propagate evsel's cpu map settings to evlist when it's
      added to an evlist.  But the evlist->all_cpus and each evsel's cpus will
      be updated in perf_evlist__set_maps() later.  No need to do it before
      evlist's cpus are set actually.
      
      In fact it discards this intermediate all_cpus maps at the beginning
      of perf_evlist__set_maps().  Let's not do this.  It's only needed when
      an evsel is added after the evlist cpu/thread maps are set.
      Reviewed-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https://lore.kernel.org/r/20221003204647.1481128-3-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      7e2450bb
    • Namhyung Kim's avatar
      libperf: Populate system-wide evsel maps · 06b552ee
      Namhyung Kim authored
      Setting proper cpu and thread maps for system wide evsels regardless of
      user requested cpu in __perf_evlist__propagate_maps().  Those evsels
      need to be active on all cpus always.  Do it in the libperf so that we
      can guarantee it has proper maps.
      Reviewed-by: default avatarAdrian Hunter <adrian.hunter@intel.com>
      Signed-off-by: default avatarNamhyung Kim <namhyung@kernel.org>
      Cc: Ian Rogers <irogers@google.com>
      Cc: Ingo Molnar <mingo@kernel.org>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Leo Yan <leo.yan@linaro.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Link: https://lore.kernel.org/r/20221003204647.1481128-2-namhyung@kernel.orgSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      06b552ee
    • Ian Rogers's avatar
      perf vendor events: Update Intel broadwellde · d7184d94
      Ian Rogers authored
      Events remain at v23, and the metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Switch for core metrics from BDX to BDW.
       - Switch for Page_Walks_Utilization to BDX version.
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - Addition of all 6 levels of TMA metrics. Child metrics are placed in
         a group named after their parent allowing children of a metric to
         be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-24-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      d7184d94
    • Ian Rogers's avatar
      perf vendor events: Update Intel tigerlake · a7c1aaa6
      Ian Rogers authored
      Events remain at v1.07, and the metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - Addition of all 6 levels of TMA metrics. Previously metrics
         involving topdown events were dropped. Child metrics are placed in
         a group named after their parent allowing children of a metric to
         be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-23-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      a7c1aaa6
    • Ian Rogers's avatar
      perf vendor events: Update Intel skylake · aac53e8f
      Ian Rogers authored
      Events remain at v53, and the metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - _SMT suffix metrics are dropped as the #SMT_On and #EBS_Mode are
         correctly expanded in the single main metric.
       - Addition of all 6 levels of TMA metrics. Child metrics are placed
         in a group named after their parent allowing children of a metric
         to be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-22-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      aac53e8f
    • Ian Rogers's avatar
      perf vendor events: Update silvermont cpuids · e762a998
      Ian Rogers authored
      Add cpuid that was added to https://download.01.org/perfmon/mapfile.csvSigned-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-21-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      e762a998
    • Ian Rogers's avatar
      perf vendor events: Update Intel sapphirerapids · 9a1b4aa4
      Ian Rogers authored
      Events are updated to v1.06 the core metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - Addition of all 6 levels of TMA metrics. Previously metrics
         involving topdown events were dropped. Child metrics are placed in
         a group named after their parent allowing children of a metric to
         be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
       - Latest metrics from: https://github.com/intel/perfmon-metrics
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-20-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      9a1b4aa4
    • Ian Rogers's avatar
      perf vendor events: Update Intel sandybridge · db35c1dc
      Ian Rogers authored
      Events remain at v17, and the metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - _SMT suffix metrics are dropped as the #SMT_On and #EBS_Mode are
         correctly expanded in the single main metric.
       - Addition of all 6 levels of TMA metrics. Child metrics are placed in
         a group named after their parent allowing children of a metric to
         be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-19-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      db35c1dc
    • Ian Rogers's avatar
      perf vendor events: Update Intel jaketown · 3405de19
      Ian Rogers authored
      Events remain at v21, and the metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - _SMT suffix metrics are dropped as the #SMT_On and #EBS_Mode are
         correctly expanded in the single main metric.
       - Addition of all 6 levels of TMA metrics. Child metrics are placed in
         a group named after their parent allowing children of a metric to
         be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-18-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      3405de19
    • Ian Rogers's avatar
      perf vendor events: Update Intel ivytown · d2aaf040
      Ian Rogers authored
      Events are updated to v22 the core metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - _SMT suffix metrics are dropped as the #SMT_On and #EBS_Mode are
         correctly expanded in the single main metric.
       - Addition of all 6 levels of TMA metrics. Child metrics are placed in
         a group named after their parent allowing children of a metric to
         be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-17-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      d2aaf040
    • Ian Rogers's avatar
      perf vendor events: Update Intel ivybridge · 3bd2d211
      Ian Rogers authored
      Events remain at v22, and the metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - _SMT suffix metrics are dropped as the #SMT_On and #EBS_Mode are
         correctly expanded in the single main metric.
       - Addition of all 6 levels of TMA metrics. Child metrics are placed in
         a group named after their parent allowing children of a metric to
         be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-16-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      3bd2d211
    • Ian Rogers's avatar
      perf vendor events: Update Intel icelakex · bd035250
      Ian Rogers authored
      Events are updated to v1.16 the metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - Addition of all 6 levels of TMA metrics. Previously metrics
         involving topdown events were dropped. Child metrics are placed in
         a group named after their parent allowing children of a metric to
         be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
       - Latest metrics from: https://github.com/intel/perfmon-metrics
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-15-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      bd035250
    • Ian Rogers's avatar
      perf vendor events: Update Intel icelake · 8fb4ddf4
      Ian Rogers authored
      Events are updated to v1.15, the metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - Addition of all 6 levels of TMA metrics. Previously metrics
         involving topdown events were dropped. Child metrics are placed in
         a group named after their parent allowing children of a metric to
         be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-14-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      8fb4ddf4
    • Ian Rogers's avatar
      perf vendor events: Update Intel haswellx · 08ce57dd
      Ian Rogers authored
      Events are updated to v26, the core metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Uncore event updates by Zhengjun Xing <zhengjun.xing@linux.intel.com>.
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - _SMT suffix metrics are dropped as the #SMT_On and #EBS_Mode are
         correctly expanded in the single main metric.
       - Addition of all 6 levels of TMA metrics. Previously metrics
         involving topdown events were dropped. Child metrics are placed in
         a group named after their parent allowing children of a metric to
         be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
       - Latest metrics from: https://github.com/intel/perfmon-metrics
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-13-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      08ce57dd
    • Ian Rogers's avatar
      perf vendor events: Update Intel haswell · dd7aae2c
      Ian Rogers authored
      Events are updated to v32, the core metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - _SMT suffix metrics are dropped as the #SMT_On and #EBS_Mode are
         correctly expanded in the single main metric.
       - Addition of all 6 levels of TMA metrics. Child metrics are placed in
         a group named after their parent allowing children of a metric to
         be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-12-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      dd7aae2c
    • Ian Rogers's avatar
      perf vendor events: Update elkhartlake cpuids · 5ed4fc26
      Ian Rogers authored
      Add cpuid that was added to https://download.01.org/perfmon/mapfile.csvSigned-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-11-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      5ed4fc26
    • Ian Rogers's avatar
      perf vendor events: Update Intel cascadelakex · 55b201a8
      Ian Rogers authored
      Events remain at v1.16, and the metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Removal of ScaleUnit from uncore events by Zhengjun Xing
         <zhengjun.xing@linux.intel.com>.
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - _SMT suffix metrics are dropped as the #SMT_On and #EBS_Mode are
         correctly expanded in the single main metric.
       - Addition of all 6 levels of TMA metrics. Child metrics are placed
         in a group named after their parent allowing children of a metric
         to be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
       - Latest metrics from: https://github.com/intel/perfmon-metrics
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-10-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      55b201a8
    • Ian Rogers's avatar
      perf vendor events: Update Intel broadwellx · 5bc4e39e
      Ian Rogers authored
      Events remain at v19, and the metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Uncore event updates by Zhengjun Xing <zhengjun.xing@linux.intel.com>.
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - _SMT suffix metrics are dropped as the #SMT_On and #EBS_Mode are
         correctly expanded in the single main metric.
       - Addition of all 6 levels of TMA metrics. Child metrics are placed
         in a group named after their parent allowing children of a metric
         to be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
       - Latest metrics from: https://github.com/intel/perfmon-metrics
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-9-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      5bc4e39e
    • Ian Rogers's avatar
      perf vendor events: Update Intel broadwell · eb4f8d77
      Ian Rogers authored
      Events remain at v26, and the metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - _SMT suffix metrics are dropped as the #SMT_On and #EBS_Mode are
         correctly expanded in the single main metric.
       - Addition of all 6 levels of TMA metrics. Child metrics are placed
         in a group named after their parent allowing children of a metric
         to be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-8-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      eb4f8d77
    • Ian Rogers's avatar
      perf vendor events: Update Intel alderlake · a80de066
      Ian Rogers authored
      Events are updated to v1.15, the core metrics are based on TMA 4.4
      full and the atom metrics on E-core TMA 2.2.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - Addition of all 6 levels of TMA metrics. Previously metrics
         involving topdown events were dropped. Child metrics are placed in
         a group named after their parent allowing children of a metric to
         be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
       - Update mapfile.csv CPUIDs to match 01.org.
      
      Tested with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-7-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      a80de066
    • Ian Rogers's avatar
      perf vendor events: Update Intel skylakex · 313b2f38
      Ian Rogers authored
      Events remain at v1.28, and the metrics are based on TMA 4.4 full.
      
      Use script at:
      https://github.com/intel/event-converter-for-linux-perf/blob/master/download_and_gen.py
      with updates at:
      https://github.com/captain5050/event-converter-for-linux-perf
      
      Updates include:
       - Removal of ScaleUnit from uncore events by Zhengjun Xing
         <zhengjun.xing@linux.intel.com>.
       - Rename of topdown TMA metrics from Frontend_Bound to tma_frontend_bound.
       - _SMT suffix metrics are dropped as the #SMT_On and #EBS_Mode are
         correctly expanded in the single main metric.
       - Addition of all 6 levels of TMA metrics. Child metrics are placed
         in a group named after their parent allowing children of a metric
         to be easily measured using the metric name with a _group suffix.
       - ## and ##? operators are correctly expanded.
       - The locate-with column is added to the long description describing
         a sampling event.
       - Metrics are written in terms of other metrics to reduce the
         expression size and increase readability.
       - Latest metrics from: https://github.com/intel/perfmon-metrics
      
      Tested on a skylakex manually and with 'perf test':
       10: PMU events                                                      :
       10.1: PMU event table sanity                                        : Ok
       10.2: PMU event map aliases                                         : Ok
       10.3: Parsing of PMU event table metrics                            : Ok
       10.4: Parsing of PMU event table metrics with fake PMUs             : Ok
       93: perf all metricgroups test                                      : Ok
       94: perf all metrics test                                           : Skip
       95: perf all PMU test                                               : Ok
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-6-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      313b2f38
    • Ian Rogers's avatar
      perf metrics: Don't scale counts going into metrics · 8cff7490
      Ian Rogers authored
      Counts are scaled prior to going into saved_value, reverse the scaling
      so that metrics don't double scale values.
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-5-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      8cff7490
    • Ian Rogers's avatar
      perf expr: Remove jevents case workaround · 715b824f
      Ian Rogers authored
      jevents.py no longer lowercases metrics and altering the case can cause
      hashmap lookups to fail, so remove.
      Signed-off-by: default avatarIan Rogers <irogers@google.com>
      Cc: Ahmad Yasin <ahmad.yasin@intel.com>
      Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
      Cc: Andi Kleen <ak@linux.intel.com>
      Cc: Caleb Biggers <caleb.biggers@intel.com>
      Cc: Florian Fischer <florian.fischer@muhq.space>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: James Clark <james.clark@arm.com>
      Cc: Jiri Olsa <jolsa@kernel.org>
      Cc: John Garry <john.garry@huawei.com>
      Cc: Kajol Jain <kjain@linux.ibm.com>
      Cc: Kan Liang <kan.liang@linux.intel.com>
      Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Miaoqian Lin <linmq006@gmail.com>
      Cc: Namhyung Kim <namhyung@kernel.org>
      Cc: Perry Taylor <perry.taylor@intel.com>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Samantha Alt <samantha.alt@intel.com>
      Cc: Stephane Eranian <eranian@google.com>
      Cc: Thomas Richter <tmricht@linux.ibm.com>
      Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
      Link: https://lore.kernel.org/r/20221004021612.325521-4-irogers@google.comSigned-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
      715b824f