[1/2] powerpc/perf: Add constraints for power9 l2/l3 bus events
Michael Ellerman
patch-notifications at ellerman.id.au
Sat Dec 22 20:54:55 AEDT 2018
On Sun, 2018-06-10 at 14:27:01 UTC, Madhavan Srinivasan wrote:
> In previous generation processors, both bus events and direct
> events of performance monitoring unit can be individually
> programmabled and monitored in PMCs.
>
> But in Power9, L2/L3 bus events are always available as a
> "bank" of 4 events. To obtain the counts for any of the
> l2/l3 bus events in a given bank, the user will have to
> program PMC4 with corresponding l2/l3 bus event for that
> bank.
>
> Patch enforce two contraints incase of L2/L3 bus events.
>
> 1)Any L2/L3 event when programmed is also expected to program corresponding
> PMC4 event from that group.
> 2)PMC4 event should always been programmed first due to group constraint
> logic limitation
>
> For ex. consider these L3 bus events
>
> PM_L3_PF_ON_CHIP_MEM (0x460A0),
> PM_L3_PF_MISS_L3 (0x160A0),
> PM_L3_CO_MEM (0x260A0),
> PM_L3_PF_ON_CHIP_CACHE (0x360A0),
>
> 1) This is an INVALID group for L3 Bus event monitoring,
> since it is missing PMC4 event.
> perf stat -e "{r160A0,r260A0,r360A0}" < >
>
> And this is a VALID group for L3 Bus events:
> perf stat -e "{r460A0,r160A0,r260A0,r360A0}" < >
>
> 2) This is an INVALID group for L3 Bus event monitoring,
> since it is missing PMC4 event.
> perf stat -e "{r260A0,r360A0}" < >
>
> And this is a VALID group for L3 Bus events:
> perf stat -e "{r460A0,r260A0,r360A0}" < >
>
> 3) This is an INVALID group for L3 Bus event monitoring,
> since it is missing PMC4 event.
> perf stat -e "{r360A0}" < >
>
> And this is a VALID group for L3 Bus events:
> perf stat -e "{r460A0,r360A0}" < >
>
> Patch here implements group constraint logic suggested by Michael Ellerman.
>
> Signed-off-by: Madhavan Srinivasan <maddy at linux.vnet.ibm.com>
Series applied to powerpc next, thanks.
https://git.kernel.org/powerpc/c/59029136d75022cb8b7c7bebd1738a
cheers
More information about the Linuxppc-dev
mailing list