Thread (22 messages) read the whole thread 22 messages, 4 authors, 2023-01-11

Re: [PATCH v5 1/6] perf vendor events arm64: Add topdown L1 metrics for neoverse-n2

From: Ian Rogers <irogers@google.com>
Date: 2023-01-05 21:13:48
Also in: linux-perf-users, lkml

On Thu, Jan 5, 2023 at 2:13 AM John Garry [off-list ref] wrote:
On 05/01/2023 10:05, Jing Zhang wrote:
quoted
quoted
However, for this value of slot, isn't this discoverable from a system register per core? Quoting the sbsa: "The IMPLEMENTATION DEFINED constant SLOTS is discoverable from the system register PMMIR_EL1.SLOTS." Did you consider how this could be used?
This may be a feasible idea. The value of slots comes from the register PMMIR_EL1, which I can read in
/sys/bus/event_source/device/armv8_pmuv3_*/caps/slots. But how do I replace the slots in MetricExpr with the
read slots values? Currently I understand that parameters in metricExpr only support events and constants.
Maybe during runtime we could create a pseudo metric/event for SLOT.
For Intel we do this by just having a different constant for each
architecture. It is fairly easy to add a new "literal", so you could
add a #slots in expr__get_literal:
https://git.kernel.org/pub/scm/linux/kernel/git/acme/linux.git/tree/tools/perf/util/expr.c?h=perf/core#n407
Populating it would be the challenge :-)

Thanks,
Ian
This metric would be created during init, and it always just returns the
value which was read from PMMIR_EL1.

I'm not sure how well that would play will trying to resolve metrics
when building generated pmu-events.c, but I don't think it's all too
difficult to achieve.

Have you actually read this value for the n2 core? Does look correct?

Thanks,
John
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help