All of lore.kernel.org
 help / color / mirror / Atom feed
* Re: [PATCH 0/2] Arm CMN-600 PMU driver
@ 2020-09-09  9:34 Zidenberg, Tsahi
       [not found] ` <082F0C98-4B73-4215-8B42-0C1B31780350@amperemail.onmicrosoft.com>
  0 siblings, 1 reply; 5+ messages in thread
From: Zidenberg, Tsahi @ 2020-09-09  9:34 UTC (permalink / raw)
  To: Robin Murphy, will, mark.rutland, linux-arm-kernel
  Cc: devicetree, Saidi, Ali, harb, tuanphan, james.yang


On 05/08/2020, 15:57, "Robin Murphy" <robin.murphy@arm.com> wrote:
    > At long last, here's an initial cut of the CMN PMU driver that's been
    > festering in on-and-off development for years. It should be functionally
    > complete now, although there is still scope for improving the current
    > implementation (e.g. watchpoint register allocation could be cleverer).

Booted on graviton2 (using ACPI). Cache-fill counter value (both general and
bynodeid) responds as expected to memory pressure from user processes.

Tested-by: Tsahi Zidenberg <tsahee@amazon.com>

   > Of particular interest at this point is the user interface - is it
   > sufficiently complete and useful? Is there any need for a third event
   > targeting method in between "single node ID" and "all nodes"?

The one thing I'm missing (or didn't find) is a way for the user to determine
the list of relevant node ids for each node type or counter.
Using a wrong nodeid just gave me <not supported> as a counter value.
I don't think that it's required for a first version, though.

---
Thank you!
Tsahi


^ permalink raw reply	[flat|nested] 5+ messages in thread
* [PATCH 0/2] Arm CMN-600 PMU driver
@ 2020-08-05 12:56 ` Robin Murphy
  0 siblings, 0 replies; 5+ messages in thread
From: Robin Murphy @ 2020-08-05 12:56 UTC (permalink / raw)
  To: will, mark.rutland, linux-arm-kernel
  Cc: devicetree, alisaidi, tsahee, harb, tuanphan, james.yang

Hi all,

At long last, here's an initial cut of the CMN PMU driver that's been
festering in on-and-off development for years. It should be functionally
complete now, although there is still scope for improving the current
implementation (e.g. watchpoint register allocation could be cleverer).

Of particular interest at this point is the user interface - is it
sufficiently complete and useful? Is there any need for a third event
targeting method in between "single node ID" and "all nodes"? Is it
worth templating watchpoints by port and channel to mimic XP events? Do
we want to expose watchpoint-based bandwidth events as synthetic per-node
events? Not all of that would need to be implemented right now so as to
further stall upstreaming, but I really want to make sure that the initial
interface is solid and any further enhancements can cleanly extend it,
rather than painting ourselves into a corner in terms of ABI support.

Robin.


Robin Murphy (2):
  perf: Add Arm CMN-600 DT binding
  perf: Add Arm CMN-600 PMU driver

 Documentation/admin-guide/perf/arm-cmn.rst    |   65 +
 Documentation/admin-guide/perf/index.rst      |    1 +
 .../devicetree/bindings/perf/arm-cmn.yaml     |   57 +
 drivers/perf/Kconfig                          |    7 +
 drivers/perf/Makefile                         |    1 +
 drivers/perf/arm-cmn.c                        | 1653 +++++++++++++++++
 6 files changed, 1784 insertions(+)
 create mode 100644 Documentation/admin-guide/perf/arm-cmn.rst
 create mode 100644 Documentation/devicetree/bindings/perf/arm-cmn.yaml
 create mode 100644 drivers/perf/arm-cmn.c

-- 
2.28.0.dirty


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2020-09-18 13:08 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-09-09  9:34 [PATCH 0/2] Arm CMN-600 PMU driver Zidenberg, Tsahi
     [not found] ` <082F0C98-4B73-4215-8B42-0C1B31780350@amperemail.onmicrosoft.com>
2020-09-18 13:06   ` Robin Murphy
2020-09-18 13:06     ` Robin Murphy
  -- strict thread matches above, loose matches on Subject: below --
2020-08-05 12:56 Robin Murphy
2020-08-05 12:56 ` Robin Murphy

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.