perf vendors events arm64: Arm Cortex-A73
Add PMU events for Arm Cortex-A73 Update mapfile.csv Event data based on: https://github.com/ARM-software/data/tree/master/pmu/cortex-a73.json which is based on PMU event descriptions from the Arm Cortex-A73 Technical Reference Manual. Mapping data (for mapfile.csv) based on: https://github.com/ARM-software/data/blob/master/cpus.json which is based on Main ID Register (MIDR) information found in the Arm Technical Reference Manuals for individual CPUs. Reviewed-by: John Garry <john.garry@huawei.com> Signed-off-by: Nick Forrington <nick.forrington@arm.com> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Andi Kleen <ak@linux.intel.com> Cc: Andrew Kilroy <andrew.kilroy@arm.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: James Clark <james.clark@arm.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Kajol Jain <kjain@linux.ibm.com> Cc: Leo Yan <leo.yan@linaro.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Mike Leach <mike.leach@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: https://lore.kernel.org/r/20220520181455.340344-7-nick.forrington@arm.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
6951dee812
commit
64a091c67a
11
tools/perf/pmu-events/arch/arm64/arm/cortex-a73/branch.json
Normal file
11
tools/perf/pmu-events/arch/arm64/arm/cortex-a73/branch.json
Normal file
@ -0,0 +1,11 @@
|
||||
[
|
||||
{
|
||||
"ArchStdEvent": "BR_MIS_PRED"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "BR_PRED"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "BR_INDIRECT_SPEC"
|
||||
}
|
||||
]
|
23
tools/perf/pmu-events/arch/arm64/arm/cortex-a73/bus.json
Normal file
23
tools/perf/pmu-events/arch/arm64/arm/cortex-a73/bus.json
Normal file
@ -0,0 +1,23 @@
|
||||
[
|
||||
{
|
||||
"ArchStdEvent": "CPU_CYCLES"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "BUS_ACCESS"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "BUS_CYCLES"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "BUS_ACCESS_SHARED"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "BUS_ACCESS_NOT_SHARED"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "BUS_ACCESS_NORMAL"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "BUS_ACCESS_PERIPH"
|
||||
}
|
||||
]
|
107
tools/perf/pmu-events/arch/arm64/arm/cortex-a73/cache.json
Normal file
107
tools/perf/pmu-events/arch/arm64/arm/cortex-a73/cache.json
Normal file
@ -0,0 +1,107 @@
|
||||
[
|
||||
{
|
||||
"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": "L1D_CACHE_RD"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "L1D_CACHE_WR"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "L2D_CACHE_RD"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "L2D_CACHE_WR"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "L2D_CACHE_WB_VICTIM"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "L2D_CACHE_WB_CLEAN"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "L2D_CACHE_INVAL"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Number of ways read in the instruction cache - Tag RAM",
|
||||
"EventCode": "0xC2",
|
||||
"EventName": "I_TAG_RAM_RD",
|
||||
"BriefDescription": "Number of ways read in the instruction cache - Tag RAM"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Number of ways read in the instruction cache - Data RAM",
|
||||
"EventCode": "0xC3",
|
||||
"EventName": "I_DATA_RAM_RD",
|
||||
"BriefDescription": "Number of ways read in the instruction cache - Data RAM"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Number of ways read in the instruction BTAC RAM",
|
||||
"EventCode": "0xC4",
|
||||
"EventName": "I_BTAC_RAM_RD",
|
||||
"BriefDescription": "Number of ways read in the instruction BTAC RAM"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Level 1 PLD TLB refill",
|
||||
"EventCode": "0xE7",
|
||||
"EventName": "PLD_UTLB_REFILL",
|
||||
"BriefDescription": "Level 1 PLD TLB refill"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Level 1 CP15 TLB refill",
|
||||
"EventCode": "0xE8",
|
||||
"EventName": "CP15_UTLB_REFILL",
|
||||
"BriefDescription": "Level 1 CP15 TLB refill"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Level 1 TLB flush",
|
||||
"EventCode": "0xE9",
|
||||
"EventName": "UTLB_FLUSH",
|
||||
"BriefDescription": "Level 1 TLB flush"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Level 2 TLB access",
|
||||
"EventCode": "0xEA",
|
||||
"EventName": "TLB_ACCESS",
|
||||
"BriefDescription": "Level 2 TLB access"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Level 2 TLB miss",
|
||||
"EventCode": "0xEB",
|
||||
"EventName": "TLB_MISS",
|
||||
"BriefDescription": "Level 2 TLB miss"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Data cache hit in itself due to VIPT aliasing",
|
||||
"EventCode": "0xEC",
|
||||
"EventName": "DCACHE_SELF_HIT_VIPT",
|
||||
"BriefDescription": "Data cache hit in itself due to VIPT aliasing"
|
||||
}
|
||||
]
|
14
tools/perf/pmu-events/arch/arm64/arm/cortex-a73/etm.json
Normal file
14
tools/perf/pmu-events/arch/arm64/arm/cortex-a73/etm.json
Normal file
@ -0,0 +1,14 @@
|
||||
[
|
||||
{
|
||||
"PublicDescription": "ETM trace unit output 0",
|
||||
"EventCode": "0xDE",
|
||||
"EventName": "ETM_EXT_OUT0",
|
||||
"BriefDescription": "ETM trace unit output 0"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "ETM trace unit output 1",
|
||||
"EventCode": "0xDF",
|
||||
"EventName": "ETM_EXT_OUT1",
|
||||
"BriefDescription": "ETM trace unit output 1"
|
||||
}
|
||||
]
|
@ -0,0 +1,14 @@
|
||||
[
|
||||
{
|
||||
"ArchStdEvent": "EXC_TAKEN"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "EXC_HVC"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Number of Traps to hypervisor",
|
||||
"EventCode": "0xDC",
|
||||
"EventName": "EXC_TRAP_HYP",
|
||||
"BriefDescription": "Number of Traps to hypervisor"
|
||||
}
|
||||
]
|
@ -0,0 +1,65 @@
|
||||
[
|
||||
{
|
||||
"ArchStdEvent": "SW_INCR"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "INST_RETIRED"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "EXC_RETURN"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "CID_WRITE_RETIRED"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "PC_WRITE_RETIRED"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "BR_IMMED_RETIRED"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "BR_RETURN_RETIRED"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "INST_SPEC"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "TTBR_WRITE_RETIRED"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "LDREX_SPEC"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "STREX_FAIL_SPEC"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "LD_SPEC"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "ST_SPEC"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "LDST_SPEC"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "DP_SPEC"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "ASE_SPEC"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "VFP_SPEC"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "CRYPTO_SPEC"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "ISB_SPEC"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "DSB_SPEC"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "DMB_SPEC"
|
||||
}
|
||||
]
|
14
tools/perf/pmu-events/arch/arm64/arm/cortex-a73/memory.json
Normal file
14
tools/perf/pmu-events/arch/arm64/arm/cortex-a73/memory.json
Normal file
@ -0,0 +1,14 @@
|
||||
[
|
||||
{
|
||||
"ArchStdEvent": "MEM_ACCESS"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "MEM_ACCESS_RD"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "MEM_ACCESS_WR"
|
||||
},
|
||||
{
|
||||
"ArchStdEvent": "UNALIGNED_LDST_SPEC"
|
||||
}
|
||||
]
|
44
tools/perf/pmu-events/arch/arm64/arm/cortex-a73/mmu.json
Normal file
44
tools/perf/pmu-events/arch/arm64/arm/cortex-a73/mmu.json
Normal file
@ -0,0 +1,44 @@
|
||||
[
|
||||
{
|
||||
"PublicDescription": "Duration of a translation table walk handled by the MMU",
|
||||
"EventCode": "0xE0",
|
||||
"EventName": "MMU_PTW",
|
||||
"BriefDescription": "Duration of a translation table walk handled by the MMU"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Duration of a Stage 1 translation table walk handled by the MMU",
|
||||
"EventCode": "0xE1",
|
||||
"EventName": "MMU_PTW_ST1",
|
||||
"BriefDescription": "Duration of a Stage 1 translation table walk handled by the MMU"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Duration of a Stage 2 translation table walk handled by the MMU",
|
||||
"EventCode": "0xE2",
|
||||
"EventName": "MMU_PTW_ST2",
|
||||
"BriefDescription": "Duration of a Stage 2 translation table walk handled by the MMU"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Duration of a translation table walk requested by the LSU",
|
||||
"EventCode": "0xE3",
|
||||
"EventName": "MMU_PTW_LSU",
|
||||
"BriefDescription": "Duration of a translation table walk requested by the LSU"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Duration of a translation table walk requested by the Instruction Side",
|
||||
"EventCode": "0xE4",
|
||||
"EventName": "MMU_PTW_ISIDE",
|
||||
"BriefDescription": "Duration of a translation table walk requested by the Instruction Side"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Duration of a translation table walk requested by a Preload instruction or Prefetch request",
|
||||
"EventCode": "0xE5",
|
||||
"EventName": "MMU_PTW_PLD",
|
||||
"BriefDescription": "Duration of a translation table walk requested by a Preload instruction or Prefetch request"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Duration of a translation table walk requested by a CP15 operation (maintenance by MVA and VA to PA operations)",
|
||||
"EventCode": "0xE6",
|
||||
"EventName": "MMU_PTW_CP15",
|
||||
"BriefDescription": "Duration of a translation table walk requested by a CP15 operation (maintenance by MVA and VA to PA operations)"
|
||||
}
|
||||
]
|
@ -0,0 +1,38 @@
|
||||
[
|
||||
{
|
||||
"PublicDescription": "A linefill caused an instruction side stall",
|
||||
"EventCode": "0xC0",
|
||||
"EventName": "LF_STALL",
|
||||
"BriefDescription": "A linefill caused an instruction side stall"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "A translation table walk caused an instruction side stall",
|
||||
"EventCode": "0xC1",
|
||||
"EventName": "PTW_STALL",
|
||||
"BriefDescription": "A translation table walk caused an instruction side stall"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Duration for which all slots in the Load-Store Unit are busy",
|
||||
"EventCode": "0xD3",
|
||||
"EventName": "D_LSU_SLOT_FULL",
|
||||
"BriefDescription": "Duration for which all slots in the Load-Store Unit are busy"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Duration for which all slots in the load-store issue queue are busy",
|
||||
"EventCode": "0xD8",
|
||||
"EventName": "LS_IQ_FULL",
|
||||
"BriefDescription": "Duration for which all slots in the load-store issue queue are busy"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Duration for which all slots in the data processing issue queue are busy",
|
||||
"EventCode": "0xD9",
|
||||
"EventName": "DP_IQ_FULL",
|
||||
"BriefDescription": "Duration for which all slots in the data processing issue queue are busy"
|
||||
},
|
||||
{
|
||||
"PublicDescription": "Duration for which all slots in the Data Engine issue queue are busy",
|
||||
"EventCode": "0xDA",
|
||||
"EventName": "DE_IQ_FULL",
|
||||
"BriefDescription": "Duration for which all slots in the Data Engine issue queue are busy"
|
||||
}
|
||||
]
|
@ -20,6 +20,7 @@
|
||||
0x00000000410fd060,v1,arm/cortex-a65,core
|
||||
0x00000000410fd070,v1,arm/cortex-a57-a72,core
|
||||
0x00000000410fd080,v1,arm/cortex-a57-a72,core
|
||||
0x00000000410fd090,v1,arm/cortex-a73,core
|
||||
0x00000000410fd0b0,v1,arm/cortex-a76-n1,core
|
||||
0x00000000410fd0c0,v1,arm/cortex-a76-n1,core
|
||||
0x00000000410fd400,v1,arm/neoverse-v1,core
|
||||
|
|
Loading…
Reference in New Issue
Block a user