Messages in this thread | | | Date | Wed, 17 Apr 2024 13:21:31 -0300 | From | Arnaldo Carvalho de Melo <> | Subject | Re: [RFC PATCH v5 01/16] perf stat: Add new field in stat_config to enable hardware aware grouping. |
| |
On Tue, Apr 16, 2024 at 08:49:21PM -0700, Ian Rogers wrote: > On Fri, Apr 12, 2024 at 2:08 PM <weilin.wang@intel.com> wrote: > > > > From: Weilin Wang <weilin.wang@intel.com> > > > > Hardware counter and event information could be used to help creating event > > groups that better utilize hardware counters and improve multiplexing. > > > > Reviewed-by: Ian Rogers <irogers@google.com> > > Signed-off-by: Weilin Wang <weilin.wang@intel.com> > > --- > > tools/perf/builtin-stat.c | 5 +++++ > > tools/perf/util/metricgroup.c | 5 +++++ > > tools/perf/util/metricgroup.h | 1 + > > tools/perf/util/stat.h | 1 + > > 4 files changed, 12 insertions(+) > > > > diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c > > index 6bba1a89d030..c4a5f0984295 100644 > > --- a/tools/perf/builtin-stat.c > > +++ b/tools/perf/builtin-stat.c > > @@ -2106,6 +2106,7 @@ static int add_default_attributes(void) > > stat_config.metric_no_threshold, > > stat_config.user_requested_cpu_list, > > stat_config.system_wide, > > + stat_config.hardware_aware_grouping, > > &stat_config.metric_events); > > } > > > > @@ -2139,6 +2140,7 @@ static int add_default_attributes(void) > > stat_config.metric_no_threshold, > > stat_config.user_requested_cpu_list, > > stat_config.system_wide, > > + stat_config.hardware_aware_grouping, > > &stat_config.metric_events); > > } > > > > @@ -2173,6 +2175,7 @@ static int add_default_attributes(void) > > /*metric_no_threshold=*/true, > > stat_config.user_requested_cpu_list, > > stat_config.system_wide, > > + stat_config.hardware_aware_grouping, > > &stat_config.metric_events) < 0) > > return -1; > > } > > @@ -2214,6 +2217,7 @@ static int add_default_attributes(void) > > /*metric_no_threshold=*/true, > > stat_config.user_requested_cpu_list, > > stat_config.system_wide, > > + stat_config.hardware_aware_grouping, > > &stat_config.metric_events) < 0) > > return -1; > > > > @@ -2748,6 +2752,7 @@ int cmd_stat(int argc, const char **argv) > > stat_config.metric_no_threshold, > > stat_config.user_requested_cpu_list, > > stat_config.system_wide, > > + stat_config.hardware_aware_grouping, > > &stat_config.metric_events); > > > > zfree(&metrics); > > diff --git a/tools/perf/util/metricgroup.c b/tools/perf/util/metricgroup.c > > index 79ef6095ab28..11613450725a 100644 > > --- a/tools/perf/util/metricgroup.c > > +++ b/tools/perf/util/metricgroup.c > > @@ -1690,12 +1690,17 @@ int metricgroup__parse_groups(struct evlist *perf_evlist, > > bool metric_no_threshold, > > const char *user_requested_cpu_list, > > bool system_wide, > > + bool hardware_aware_grouping, > > struct rblist *metric_events) > > { > > const struct pmu_metrics_table *table = pmu_metrics_table__find(); > > > > if (!table) > > return -EINVAL; > > + if (hardware_aware_grouping) { > > + pr_debug("Use hardware aware grouping instead of traditional metric grouping method\n"); > > + } > > nit: single line if statements shouldn't have curlies: > https://www.kernel.org/doc/html/v6.8/process/coding-style.html#placing-braces-and-spaces
Fixed this while applying this patch.
- Arnaldo
| |