Messages in this thread | | | From | Ian Rogers <> | Date | Wed, 3 Apr 2024 13:23:51 -0700 | Subject | Re: [PATCH v1] perf metrics: Remove the "No_group" metric group |
| |
On Wed, Apr 3, 2024 at 11:44 AM Andi Kleen <ak@linux.intel.com> wrote: > > On Wed, Apr 03, 2024 at 09:46:36AM -0700, Ian Rogers wrote: > > Rather than place metrics without a metric group in "No_group" place > > them in a a metric group that is their name. Still allow such metrics > > to be selected if "No_group" is passed, this change just impacts perf > > list. > > But what's the point of it? It will just make perf list more verbose, > but I don't see any advantage.
So it is possible to list all metrics, that's not changed here. The thing I'm looking to change is that when a metric is standalone it appears in "perf list metricgroups". The reason is that a metric group can gather a bunch of related metrics, say some form of read, write and total bandwidth, whereas something like an idle metric ("d_ratio(max(msr@tsc@ - msr@mperf@, 0), msr@tsc@)") that could get placed in No_group is more useful if it appears in a metric group of "idle". I'd put forward that nobody ever wants to run "idle" as part of "No_group" whereas being able to see it as a thing in metricgroups is useful. I want to be able to run "perf list metricgroups" and get groups of 1 or more metrics that someone might want to pass to "perf stat -M", currently this just shows when there is a group of more than 1 metric as there is no practice of putting a metric like "idle" into a metric group called "idle". We could update all metrics to make it so that when they don't have a metric group we add them to one with their name. We could do this in jevents.py. Those changes would make the No_group logic redundant, so we should remove it. Just updating the No_group logic in the perf command seemed like the minimal approach.
Thanks, Ian
> -Andi
| |