[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <cover.1652954372.git.sandipan.das@amd.com>
Date: Thu, 19 May 2022 15:33:29 +0530
From: Sandipan Das <sandipan.das@....com>
To: <linux-kernel@...r.kernel.org>, <linux-perf-users@...r.kernel.org>,
<x86@...nel.org>
CC: <peterz@...radead.org>, <bp@...en8.de>, <acme@...nel.org>,
<namhyung@...nel.org>, <jolsa@...nel.org>, <tglx@...utronix.de>,
<mingo@...hat.com>, <pbonzini@...hat.com>, <jmattson@...gle.com>,
<like.xu.linux@...il.com>, <eranian@...gle.com>,
<ananth.narayan@....com>, <ravi.bangoria@....com>,
<santosh.shukla@....com>, <sandipan.das@....com>
Subject: [PATCH 0/5] perf/x86/amd: Add PerfMonV2 DF ehnancements
Add support for using AMD Performance Monitoring Version 2
(PerfMonV2) features for Data Fabric (DF) events on Zen 4
processors. Utilize new CPUID leaf to detect PerfMonV2 and
determine the number of available PMCs. Also introduce the
new event encoding format and RDPMC mappings for accessing
additional DF counters.
E.g. larger metric groups which require more than 4 counters
could not be counted even on a Zen 4 platform that supports
16 DF counters. Only partial counting is possible by using
"--metric-no-group".
$ sudo perf stat -M nps1_die_to_dram true
Before:
Performance counter stats for 'system wide':
<not counted> dram_channel_data_controller_4 (0.00%)
<not counted> dram_channel_data_controller_1 (0.00%)
<not counted> dram_channel_data_controller_6 (0.00%)
<not counted> dram_channel_data_controller_3 (0.00%)
<not counted> dram_channel_data_controller_0 (0.00%)
<not counted> dram_channel_data_controller_5 (0.00%)
<not counted> dram_channel_data_controller_2 (0.00%)
<not counted> dram_channel_data_controller_7 (0.00%)
886817 ns duration_time
0.000886817 seconds time elapsed
After:
Performance counter stats for 'system wide':
0 dram_channel_data_controller_4 # 0.2 MiB nps1_die_to_dram
0 dram_channel_data_controller_1
0 dram_channel_data_controller_6
2838 dram_channel_data_controller_3
0 dram_channel_data_controller_0
0 dram_channel_data_controller_5
0 dram_channel_data_controller_2
0 dram_channel_data_controller_7
896438 ns duration_time
0.000896438 seconds time elapsed
Sandipan Das (5):
perf/x86/amd/uncore: Use dynamic events array
perf/x86/amd/uncore: Use attr_update for format attributes
perf/x86/amd/uncore: Detect available DF counters
perf/x86/amd/uncore: Add PerfMonV2 DF event format
perf/x86/amd/uncore: Add PerfMonV2 RDPMC assignments
arch/x86/events/amd/uncore.c | 146 ++++++++++++++++++++++++------
arch/x86/include/asm/perf_event.h | 16 ++++
2 files changed, 136 insertions(+), 26 deletions(-)
--
2.34.1
Powered by blists - more mailing lists