Re: [PATCH 1/3] perf vendor events intel: Metric fixes for SKX/CLX

From: Arnaldo Carvalho de Melo
Date: Tue Jul 02 2019 - 11:58:54 EST


Em Fri, Jun 28, 2019 at 03:07:35PM -0700, Andi Kleen escreveu:
> From: Andi Kleen <ak@xxxxxxxxxxxxxxx>

Thanks, applied the three patches.

- Arnaldo

> - Add a missing filter for the DRAM_Latency / DRAM_Parallel_Reads metrics
> - Remove the useless PMM_* metrics from Skylake
>
> Signed-off-by: Andi Kleen <ak@xxxxxxxxxxxxxxx>
> ---
> .../arch/x86/cascadelakex/clx-metrics.json | 4 ++--
> .../arch/x86/skylakex/skx-metrics.json | 22 ++-----------------
> 2 files changed, 4 insertions(+), 22 deletions(-)
>
> diff --git a/tools/perf/pmu-events/arch/x86/cascadelakex/clx-metrics.json b/tools/perf/pmu-events/arch/x86/cascadelakex/clx-metrics.json
> index 1a1a3501180a..a382b115633d 100644
> --- a/tools/perf/pmu-events/arch/x86/cascadelakex/clx-metrics.json
> +++ b/tools/perf/pmu-events/arch/x86/cascadelakex/clx-metrics.json
> @@ -314,13 +314,13 @@
> "MetricName": "DRAM_BW_Use"
> },
> {
> - "MetricExpr": "1000000000 * ( cha@event\\=0x36\\\\\\,umask\\=0x21@ / cha@event\\=0x35\\\\\\,umask\\=0x21@ ) / ( cha_0@event\\=0x0@ / duration_time )",
> + "MetricExpr": "1000000000 * ( cha@event\\=0x36\\\\\\,umask\\=0x21\\\\\\,config\\=0x40433@ / cha@event\\=0x35\\\\\\,umask\\=0x21\\\\\\,config\\=0x40433@ ) / ( cha_0@event\\=0x0@ / duration_time )",
> "BriefDescription": "Average latency of data read request to external memory (in nanoseconds). Accounts for demand loads and L1/L2 prefetches",
> "MetricGroup": "Memory_Lat",
> "MetricName": "DRAM_Read_Latency"
> },
> {
> - "MetricExpr": "cha@event\\=0x36\\\\\\,umask\\=0x21@ / cha@event\\=0x36\\\\\\,umask\\=0x21\\\\\\,thresh\\=1@",
> + "MetricExpr": "cha@event\\=0x36\\\\\\,umask\\=0x21\\\\\\,config\\=0x40433@ / cha@event\\=0x36\\\\\\,umask\\=0x21\\\\\\,thresh\\=1\\\\\\,config\\=0x40433@",
> "BriefDescription": "Average number of parallel data read requests to external memory. Accounts for demand loads and L1/L2 prefetches",
> "MetricGroup": "Memory_BW",
> "MetricName": "DRAM_Parallel_Reads"
> diff --git a/tools/perf/pmu-events/arch/x86/skylakex/skx-metrics.json b/tools/perf/pmu-events/arch/x86/skylakex/skx-metrics.json
> index 56e03ba771f4..35b255fa6a79 100644
> --- a/tools/perf/pmu-events/arch/x86/skylakex/skx-metrics.json
> +++ b/tools/perf/pmu-events/arch/x86/skylakex/skx-metrics.json
> @@ -314,35 +314,17 @@
> "MetricName": "DRAM_BW_Use"
> },
> {
> - "MetricExpr": "1000000000 * ( cha@event\\=0x36\\\\\\,umask\\=0x21@ / cha@event\\=0x35\\\\\\,umask\\=0x21@ ) / ( cha_0@event\\=0x0@ / duration_time )",
> + "MetricExpr": "1000000000 * ( cha@event\\=0x36\\\\\\,umask\\=0x21\\\\\\,config\\=0x40433@ / cha@event\\=0x35\\\\\\,umask\\=0x21\\\\\\,config\\=0x40433@ ) / ( cha_0@event\\=0x0@ / duration_time )",
> "BriefDescription": "Average latency of data read request to external memory (in nanoseconds). Accounts for demand loads and L1/L2 prefetches",
> "MetricGroup": "Memory_Lat",
> "MetricName": "DRAM_Read_Latency"
> },
> {
> - "MetricExpr": "cha@event\\=0x36\\\\\\,umask\\=0x21@ / cha@event\\=0x36\\\\\\,umask\\=0x21\\\\\\,thresh\\=1@",
> + "MetricExpr": "cha@event\\=0x36\\\\\\,umask\\=0x21\\\\\\,config\\=0x40433@ / cha@event\\=0x36\\\\\\,umask\\=0x21\\\\\\,thresh\\=1\\\\\\,config\\=0x40433@",
> "BriefDescription": "Average number of parallel data read requests to external memory. Accounts for demand loads and L1/L2 prefetches",
> "MetricGroup": "Memory_BW",
> "MetricName": "DRAM_Parallel_Reads"
> },
> - {
> - "MetricExpr": "( 1000000000 * ( imc@event\\=0xe0\\\\\\,umask\\=0x1@ / imc@event\\=0xe3@ ) / imc_0@event\\=0x0@ ) if 1 if 0 == 1 else 0 else 0",
> - "BriefDescription": "Average latency of data read request to external 3D X-Point memory [in nanoseconds]. Accounts for demand loads and L1/L2 data-read prefetches",
> - "MetricGroup": "Memory_Lat",
> - "MetricName": "MEM_PMM_Read_Latency"
> - },
> - {
> - "MetricExpr": "( ( 64 * imc@event\\=0xe3@ / 1000000000 ) / duration_time ) if 1 if 0 == 1 else 0 else 0",
> - "BriefDescription": "Average 3DXP Memory Bandwidth Use for reads [GB / sec]",
> - "MetricGroup": "Memory_BW",
> - "MetricName": "PMM_Read_BW"
> - },
> - {
> - "MetricExpr": "( ( 64 * imc@event\\=0xe7@ / 1000000000 ) / duration_time ) if 1 if 0 == 1 else 0 else 0",
> - "BriefDescription": "Average 3DXP Memory Bandwidth Use for Writes [GB / sec]",
> - "MetricGroup": "Memory_BW",
> - "MetricName": "PMM_Write_BW"
> - },
> {
> "MetricExpr": "cha_0@event\\=0x0@",
> "BriefDescription": "Socket actual clocks when any core is active on that socket",
> --
> 2.20.1

--

- Arnaldo