-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
perf vendor events arm64: Add Fujitsu A64FX pmu event
Add pmu events for A64FX. Documentation source: https://github.com/fujitsu/A64FX/blob/master/doc/A64FX_PMU_Events_v1.2.pdf Signed-off-by: Nakamura, Shunsuke/中村 俊介 <nakamura.shun@fujitsu.com> Reviewed-by: John Garry <john.garry@huawei.com> Tested-by: Masayoshi Mizuma <m.mizuma@jp.fujitsu.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Jiri Olsa <jolsa@redhat.com> Cc: Leo Yan <leo.yan@linaro.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Mathieu Poirier <mathieu.poirier@linaro.org> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Will Deacon <will@kernel.org> Cc: linux-arm-kernel@lists.infradead.org Link: http://lore.kernel.org/lkml/20210308105342.746940-3-nakamura.shun@fujitsu.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
- Loading branch information
Shunsuke Nakamura
authored and
Arnaldo Carvalho de Melo
committed
Mar 15, 2021
1 parent
8efd163
commit 5497b23
Showing
11 changed files
with
864 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
[ | ||
{ | ||
"ArchStdEvent": "BR_MIS_PRED" | ||
}, | ||
{ | ||
"ArchStdEvent": "BR_PRED" | ||
} | ||
] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
[ | ||
{ | ||
"PublicDescription": "This event counts read transactions from tofu controller to measured CMG.", | ||
"EventCode": "0x314", | ||
"EventName": "BUS_READ_TOTAL_TOFU", | ||
"BriefDescription": "This event counts read transactions from tofu controller to measured CMG." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts read transactions from PCI controller to measured CMG.", | ||
"EventCode": "0x315", | ||
"EventName": "BUS_READ_TOTAL_PCI", | ||
"BriefDescription": "This event counts read transactions from PCI controller to measured CMG." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts read transactions from measured CMG local memory to measured CMG.", | ||
"EventCode": "0x316", | ||
"EventName": "BUS_READ_TOTAL_MEM", | ||
"BriefDescription": "This event counts read transactions from measured CMG local memory to measured CMG." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts write transactions from measured CMG to CMG0, if measured CMG is not CMG0.", | ||
"EventCode": "0x318", | ||
"EventName": "BUS_WRITE_TOTAL_CMG0", | ||
"BriefDescription": "This event counts write transactions from measured CMG to CMG0, if measured CMG is not CMG0." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts write transactions from measured CMG to CMG1, if measured CMG is not CMG1.", | ||
"EventCode": "0x319", | ||
"EventName": "BUS_WRITE_TOTAL_CMG1", | ||
"BriefDescription": "This event counts write transactions from measured CMG to CMG1, if measured CMG is not CMG1." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts write transactions from measured CMG to CMG2, if measured CMG is not CMG2.", | ||
"EventCode": "0x31A", | ||
"EventName": "BUS_WRITE_TOTAL_CMG2", | ||
"BriefDescription": "This event counts write transactions from measured CMG to CMG2, if measured CMG is not CMG2." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts write transactions from measured CMG to CMG3, if measured CMG is not CMG3.", | ||
"EventCode": "0x31B", | ||
"EventName": "BUS_WRITE_TOTAL_CMG3", | ||
"BriefDescription": "This event counts write transactions from measured CMG to CMG3, if measured CMG is not CMG3." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts write transactions from measured CMG to tofu controller.", | ||
"EventCode": "0x31C", | ||
"EventName": "BUS_WRITE_TOTAL_TOFU", | ||
"BriefDescription": "This event counts write transactions from measured CMG to tofu controller." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts write transactions from measured CMG to PCI controller.", | ||
"EventCode": "0x31D", | ||
"EventName": "BUS_WRITE_TOTAL_PCI", | ||
"BriefDescription": "This event counts write transactions from measured CMG to PCI controller." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts write transactions from measured CMG to measured CMG local memory.", | ||
"EventCode": "0x31E", | ||
"EventName": "BUS_WRITE_TOTAL_MEM", | ||
"BriefDescription": "This event counts write transactions from measured CMG to measured CMG local memory." | ||
} | ||
] |
128 changes: 128 additions & 0 deletions
128
tools/perf/pmu-events/arch/arm64/fujitsu/a64fx/cache.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,128 @@ | ||
[ | ||
{ | ||
"ArchStdEvent": "L1I_CACHE_REFILL" | ||
}, | ||
{ | ||
"ArchStdEvent": "L1I_TLB_REFILL" | ||
}, | ||
{ | ||
"ArchStdEvent": "L1D_CACHE_REFILL" | ||
}, | ||
{ | ||
"ArchStdEvent": "L1D_CACHE" | ||
}, | ||
{ | ||
"ArchStdEvent": "L1D_TLB_REFILL" | ||
}, | ||
{ | ||
"ArchStdEvent": "L1I_CACHE" | ||
}, | ||
{ | ||
"ArchStdEvent": "L1D_CACHE_WB" | ||
}, | ||
{ | ||
"ArchStdEvent": "L2D_CACHE" | ||
}, | ||
{ | ||
"ArchStdEvent": "L2D_CACHE_REFILL" | ||
}, | ||
{ | ||
"ArchStdEvent": "L2D_CACHE_WB" | ||
}, | ||
{ | ||
"ArchStdEvent": "L2D_TLB_REFILL" | ||
}, | ||
{ | ||
"ArchStdEvent": "L2I_TLB_REFILL" | ||
}, | ||
{ | ||
"ArchStdEvent": "L2D_TLB" | ||
}, | ||
{ | ||
"ArchStdEvent": "L2I_TLB" | ||
}, | ||
{ | ||
"PublicDescription": "This event counts L1D_CACHE_REFILL caused by software or hardware prefetch.", | ||
"EventCode": "0x49", | ||
"EventName": "L1D_CACHE_REFILL_PRF", | ||
"BriefDescription": "This event counts L1D_CACHE_REFILL caused by software or hardware prefetch." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts L2D_CACHE_REFILL caused by software or hardware prefetch.", | ||
"EventCode": "0x59", | ||
"EventName": "L2D_CACHE_REFILL_PRF", | ||
"BriefDescription": "This event counts L2D_CACHE_REFILL caused by software or hardware prefetch." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts L1D_CACHE_REFILL caused by demand access.", | ||
"EventCode": "0x200", | ||
"EventName": "L1D_CACHE_REFILL_DM", | ||
"BriefDescription": "This event counts L1D_CACHE_REFILL caused by demand access." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts L1D_CACHE_REFILL caused by hardware prefetch.", | ||
"EventCode": "0x202", | ||
"EventName": "L1D_CACHE_REFILL_HWPRF", | ||
"BriefDescription": "This event counts L1D_CACHE_REFILL caused by hardware prefetch." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts outstanding L1D cache miss requests per cycle.", | ||
"EventCode": "0x208", | ||
"EventName": "L1_MISS_WAIT", | ||
"BriefDescription": "This event counts outstanding L1D cache miss requests per cycle." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts outstanding L1I cache miss requests per cycle.", | ||
"EventCode": "0x209", | ||
"EventName": "L1I_MISS_WAIT", | ||
"BriefDescription": "This event counts outstanding L1I cache miss requests per cycle." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts L2D_CACHE_REFILL caused by demand access.", | ||
"EventCode": "0x300", | ||
"EventName": "L2D_CACHE_REFILL_DM", | ||
"BriefDescription": "This event counts L2D_CACHE_REFILL caused by demand access." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts L2D_CACHE_REFILL caused by hardware prefetch.", | ||
"EventCode": "0x302", | ||
"EventName": "L2D_CACHE_REFILL_HWPRF", | ||
"BriefDescription": "This event counts L2D_CACHE_REFILL caused by hardware prefetch." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts outstanding L2 cache miss requests per cycle.", | ||
"EventCode": "0x308", | ||
"EventName": "L2_MISS_WAIT", | ||
"BriefDescription": "This event counts outstanding L2 cache miss requests per cycle." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts the number of times of L2 cache miss.", | ||
"EventCode": "0x309", | ||
"EventName": "L2_MISS_COUNT", | ||
"BriefDescription": "This event counts the number of times of L2 cache miss." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts operations where demand access hits an L2 cache refill buffer allocated by software or hardware prefetch.", | ||
"EventCode": "0x325", | ||
"EventName": "L2D_SWAP_DM", | ||
"BriefDescription": "This event counts operations where demand access hits an L2 cache refill buffer allocated by software or hardware prefetch." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts operations where software or hardware prefetch hits an L2 cache refill buffer allocated by demand access.", | ||
"EventCode": "0x326", | ||
"EventName": "L2D_CACHE_MIBMCH_PRF", | ||
"BriefDescription": "This event counts operations where software or hardware prefetch hits an L2 cache refill buffer allocated by demand access." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts operations where demand access hits an L2 cache refill buffer allocated by software or hardware prefetch.", | ||
"EventCode": "0x396", | ||
"EventName": "L2D_CACHE_SWAP_LOCAL", | ||
"BriefDescription": "This event counts operations where demand access hits an L2 cache refill buffer allocated by software or hardware prefetch." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts energy consumption per cycle of L2 cache.", | ||
"EventCode": "0x3E0", | ||
"EventName": "EA_L2", | ||
"BriefDescription": "This event counts energy consumption per cycle of L2 cache." | ||
} | ||
] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
[ | ||
{ | ||
"ArchStdEvent": "CPU_CYCLES" | ||
} | ||
] |
29 changes: 29 additions & 0 deletions
29
tools/perf/pmu-events/arch/arm64/fujitsu/a64fx/exception.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,29 @@ | ||
[ | ||
{ | ||
"ArchStdEvent": "EXC_TAKEN" | ||
}, | ||
{ | ||
"ArchStdEvent": "EXC_UNDEF" | ||
}, | ||
{ | ||
"ArchStdEvent": "EXC_SVC" | ||
}, | ||
{ | ||
"ArchStdEvent": "EXC_PABORT" | ||
}, | ||
{ | ||
"ArchStdEvent": "EXC_DABORT" | ||
}, | ||
{ | ||
"ArchStdEvent": "EXC_IRQ" | ||
}, | ||
{ | ||
"ArchStdEvent": "EXC_FIQ" | ||
}, | ||
{ | ||
"ArchStdEvent": "EXC_SMC" | ||
}, | ||
{ | ||
"ArchStdEvent": "EXC_HVC" | ||
} | ||
] |
131 changes: 131 additions & 0 deletions
131
tools/perf/pmu-events/arch/arm64/fujitsu/a64fx/instruction.json
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,131 @@ | ||
[ | ||
{ | ||
"ArchStdEvent": "SW_INCR" | ||
}, | ||
{ | ||
"ArchStdEvent": "INST_RETIRED" | ||
}, | ||
{ | ||
"ArchStdEvent": "EXC_RETURN" | ||
}, | ||
{ | ||
"ArchStdEvent": "CID_WRITE_RETIRED" | ||
}, | ||
{ | ||
"ArchStdEvent": "INST_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "LDREX_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "STREX_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "LD_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "ST_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "LDST_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "DP_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "ASE_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "VFP_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "PC_WRITE_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "CRYPTO_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "BR_IMMED_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "BR_RETURN_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "BR_INDIRECT_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "ISB_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "DSB_SPEC" | ||
}, | ||
{ | ||
"ArchStdEvent": "DMB_SPEC" | ||
}, | ||
{ | ||
"PublicDescription": "This event counts architecturally executed zero blocking operations due to the 'DC ZVA' instruction.", | ||
"EventCode": "0x9F", | ||
"EventName": "DCZVA_SPEC", | ||
"BriefDescription": "This event counts architecturally executed zero blocking operations due to the 'DC ZVA' instruction." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts architecturally executed floating-point move operations.", | ||
"EventCode": "0x105", | ||
"EventName": "FP_MV_SPEC", | ||
"BriefDescription": "This event counts architecturally executed floating-point move operations." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts architecturally executed operations that using predicate register.", | ||
"EventCode": "0x108", | ||
"EventName": "PRD_SPEC", | ||
"BriefDescription": "This event counts architecturally executed operations that using predicate register." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts architecturally executed inter-element manipulation operations.", | ||
"EventCode": "0x109", | ||
"EventName": "IEL_SPEC", | ||
"BriefDescription": "This event counts architecturally executed inter-element manipulation operations." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts architecturally executed inter-register manipulation operations.", | ||
"EventCode": "0x10A", | ||
"EventName": "IREG_SPEC", | ||
"BriefDescription": "This event counts architecturally executed inter-register manipulation operations." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts architecturally executed NOSIMD load operations that using SIMD&FP registers.", | ||
"EventCode": "0x112", | ||
"EventName": "FP_LD_SPEC", | ||
"BriefDescription": "This event counts architecturally executed NOSIMD load operations that using SIMD&FP registers." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts architecturally executed NOSIMD store operations that using SIMD&FP registers.", | ||
"EventCode": "0x113", | ||
"EventName": "FP_ST_SPEC", | ||
"BriefDescription": "This event counts architecturally executed NOSIMD store operations that using SIMD&FP registers." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts architecturally executed SIMD broadcast floating-point load operations.", | ||
"EventCode": "0x11A", | ||
"EventName": "BC_LD_SPEC", | ||
"BriefDescription": "This event counts architecturally executed SIMD broadcast floating-point load operations." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts architecturally executed instructions, excluding the MOVPRFX instruction.", | ||
"EventCode": "0x121", | ||
"EventName": "EFFECTIVE_INST_SPEC", | ||
"BriefDescription": "This event counts architecturally executed instructions, excluding the MOVPRFX instruction." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts architecturally executed operations that uses 'pre-index' as its addressing mode.", | ||
"EventCode": "0x123", | ||
"EventName": "PRE_INDEX_SPEC", | ||
"BriefDescription": "This event counts architecturally executed operations that uses 'pre-index' as its addressing mode." | ||
}, | ||
{ | ||
"PublicDescription": "This event counts architecturally executed operations that uses 'post-index' as its addressing mode.", | ||
"EventCode": "0x124", | ||
"EventName": "POST_INDEX_SPEC", | ||
"BriefDescription": "This event counts architecturally executed operations that uses 'post-index' as its addressing mode." | ||
} | ||
] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
[ | ||
{ | ||
"PublicDescription": "This event counts energy consumption per cycle of CMG local memory.", | ||
"EventCode": "0x3E8", | ||
"EventName": "EA_MEMORY", | ||
"BriefDescription": "This event counts energy consumption per cycle of CMG local memory." | ||
} | ||
] |
Oops, something went wrong.