mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-14 06:24:53 +08:00
perf vendor events riscv: add T-HEAD C9xx JSON file
Add JSON file of T-HEAD C9xx series events. The event idx (raw value) is summary as following: event id range | support cpu 0x01 - 0x2a | c906,c910,c920 The event ids are based on the public document of T-HEAD and cover the c900 series. These events are the max that c900 series support. Since T-HEAD let manufacturers decide whether events are usable, the final support of the perf events is determined by the pmu node of the soc dtb. Signed-off-by: Inochi Amaoto <inochiama@outlook.com> Tested-by: Guo Ren <guoren@kernel.org> Acked-by: Palmer Dabbelt <palmer@rivosinc.com> Cc: Adrian Hunter <adrian.hunter@intel.com> Cc: Albert Ou <aou@eecs.berkeley.edu> Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com> Cc: Chen Wang <unicorn_wang@outlook.com> Cc: Ian Rogers <irogers@google.com> Cc: Ingo Molnar <mingo@redhat.com> Cc: Jiri Olsa <jolsa@kernel.org> Cc: Jisheng Zhang <jszhang@kernel.org> Cc: Mark Rutland <mark.rutland@arm.com> Cc: Namhyung Kim <namhyung@kernel.org> Cc: Paul Walmsley <paul.walmsley@sifive.com> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Wei Fu <wefu@redhat.com> Cc: linux-riscv@lists.infradead.org Link: https://lore.kernel.org/r/IA1PR20MB495325FCF603BAA841E29281BBBAA@IA1PR20MB4953.namprd20.prod.outlook.com Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
This commit is contained in:
parent
19dd49c933
commit
7340c6df49
@ -15,4 +15,5 @@
|
|||||||
#
|
#
|
||||||
#MVENDORID-MARCHID-MIMPID,Version,Filename,EventType
|
#MVENDORID-MARCHID-MIMPID,Version,Filename,EventType
|
||||||
0x489-0x8000000000000007-0x[[:xdigit:]]+,v1,sifive/u74,core
|
0x489-0x8000000000000007-0x[[:xdigit:]]+,v1,sifive/u74,core
|
||||||
|
0x5b7-0x0-0x0,v1,thead/c900-legacy,core
|
||||||
0x67e-0x80000000db0000[89]0-0x[[:xdigit:]]+,v1,starfive/dubhe-80,core
|
0x67e-0x80000000db0000[89]0-0x[[:xdigit:]]+,v1,starfive/dubhe-80,core
|
||||||
|
|
@ -0,0 +1,67 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventName": "L1_ICACHE_ACCESS",
|
||||||
|
"EventCode": "0x00000001",
|
||||||
|
"BriefDescription": "L1 instruction cache access"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "L1_ICACHE_MISS",
|
||||||
|
"EventCode": "0x00000002",
|
||||||
|
"BriefDescription": "L1 instruction cache miss"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "ITLB_MISS",
|
||||||
|
"EventCode": "0x00000003",
|
||||||
|
"BriefDescription": "I-UTLB miss"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "DTLB_MISS",
|
||||||
|
"EventCode": "0x00000004",
|
||||||
|
"BriefDescription": "D-UTLB miss"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "JTLB_MISS",
|
||||||
|
"EventCode": "0x00000005",
|
||||||
|
"BriefDescription": "JTLB miss"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "L1_DCACHE_READ_ACCESS",
|
||||||
|
"EventCode": "0x0000000c",
|
||||||
|
"BriefDescription": "L1 data cache read access"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "L1_DCACHE_READ_MISS",
|
||||||
|
"EventCode": "0x0000000d",
|
||||||
|
"BriefDescription": "L1 data cache read miss"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "L1_DCACHE_WRITE_ACCESS",
|
||||||
|
"EventCode": "0x0000000e",
|
||||||
|
"BriefDescription": "L1 data cache write access"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "L1_DCACHE_WRITE_MISS",
|
||||||
|
"EventCode": "0x0000000f",
|
||||||
|
"BriefDescription": "L1 data cache write miss"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "LL_CACHE_READ_ACCESS",
|
||||||
|
"EventCode": "0x00000010",
|
||||||
|
"BriefDescription": "LL Cache read access"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "LL_CACHE_READ_MISS",
|
||||||
|
"EventCode": "0x00000011",
|
||||||
|
"BriefDescription": "LL Cache read miss"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "LL_CACHE_WRITE_ACCESS",
|
||||||
|
"EventCode": "0x00000012",
|
||||||
|
"BriefDescription": "LL Cache write access"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "LL_CACHE_WRITE_MISS",
|
||||||
|
"EventCode": "0x00000013",
|
||||||
|
"BriefDescription": "LL Cache write miss"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,68 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_MISALIGNED_LOAD"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_MISALIGNED_STORE"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_ACCESS_LOAD"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_ACCESS_STORE"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_ILLEGAL_INSN"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_SET_TIMER"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_IPI_SENT"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_IPI_RECEIVED"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_FENCE_I_SENT"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_FENCE_I_RECEIVED"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_SFENCE_VMA_SENT"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_SFENCE_VMA_RECEIVED"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_SFENCE_VMA_RECEIVED"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_SFENCE_VMA_ASID_RECEIVED"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_HFENCE_GVMA_SENT"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_HFENCE_GVMA_RECEIVED"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_HFENCE_GVMA_VMID_SENT"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_HFENCE_GVMA_VMID_RECEIVED"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_HFENCE_VVMA_SENT"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_HFENCE_VVMA_RECEIVED"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_HFENCE_VVMA_ASID_SENT"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"ArchStdEvent": "FW_HFENCE_VVMA_ASID_RECEIVED"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,72 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventName": "INST_BRANCH_MISPREDICT",
|
||||||
|
"EventCode": "0x00000006",
|
||||||
|
"BriefDescription": "Mispredicted branch instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_BRANCH",
|
||||||
|
"EventCode": "0x00000007",
|
||||||
|
"BriefDescription": "Retired branch instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_JMP_MISPREDICT",
|
||||||
|
"EventCode": "0x00000008",
|
||||||
|
"BriefDescription": "Indirect branch mispredict"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_JMP",
|
||||||
|
"EventCode": "0x00000009",
|
||||||
|
"BriefDescription": "Retired jmp instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_STORE",
|
||||||
|
"EventCode": "0x0000000b",
|
||||||
|
"BriefDescription": "Retired store instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_ALU",
|
||||||
|
"EventCode": "0x0000001d",
|
||||||
|
"BriefDescription": "Retired ALU instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_LDST",
|
||||||
|
"EventCode": "0x0000001e",
|
||||||
|
"BriefDescription": "Retired Load/Store instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_VECTOR",
|
||||||
|
"EventCode": "0x0000001f",
|
||||||
|
"BriefDescription": "Retired Vector instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_CSR",
|
||||||
|
"EventCode": "0x00000020",
|
||||||
|
"BriefDescription": "Retired CSR instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_SYNC",
|
||||||
|
"EventCode": "0x00000021",
|
||||||
|
"BriefDescription": "Retired sync instructions (AMO/LR/SC instructions)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_UNALIGNED_ACCESS",
|
||||||
|
"EventCode": "0x00000022",
|
||||||
|
"BriefDescription": "Retired Store/Load instructions with unaligned memory access"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_ECALL",
|
||||||
|
"EventCode": "0x00000025",
|
||||||
|
"BriefDescription": "Retired ecall instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_LONG_JP",
|
||||||
|
"EventCode": "0x00000026",
|
||||||
|
"BriefDescription": "Retired long jump instructions"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INST_FP",
|
||||||
|
"EventCode": "0x0000002a",
|
||||||
|
"BriefDescription": "Retired FPU instructions"
|
||||||
|
}
|
||||||
|
]
|
@ -0,0 +1,80 @@
|
|||||||
|
[
|
||||||
|
{
|
||||||
|
"EventName": "LSU_SPEC_FAIL",
|
||||||
|
"EventCode": "0x0000000a",
|
||||||
|
"BriefDescription": "LSU speculation fail"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "IDU_RF_PIPE_FAIL",
|
||||||
|
"EventCode": "0x00000014",
|
||||||
|
"BriefDescription": "Instruction decode unit launch pipeline failed in RF state"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "IDU_RF_REG_FAIL",
|
||||||
|
"EventCode": "0x00000015",
|
||||||
|
"BriefDescription": "Instruction decode unit launch register file fail in RF state"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "IDU_RF_INSTRUCTION",
|
||||||
|
"EventCode": "0x00000016",
|
||||||
|
"BriefDescription": "retired instruction count of Instruction decode unit in RF (Register File) stage"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "LSU_4K_STALL",
|
||||||
|
"EventCode": "0x00000017",
|
||||||
|
"BriefDescription": "LSU stall times for long distance data access (Over 4K)",
|
||||||
|
"PublicDescription": "This stall occurs when translate virtual address with page offset over 4k"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "LSU_OTHER_STALL",
|
||||||
|
"EventCode": "0x00000018",
|
||||||
|
"BriefDescription": "LSU stall times for other reasons (except the 4k stall)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "LSU_SQ_OTHER_DIS",
|
||||||
|
"EventCode": "0x00000019",
|
||||||
|
"BriefDescription": "LSU store queue discard others"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "LSU_SQ_DATA_DISCARD",
|
||||||
|
"EventCode": "0x0000001a",
|
||||||
|
"BriefDescription": "LSU store queue discard data (uops)"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "BRANCH_DIRECTION_MISPREDICTION",
|
||||||
|
"EventCode": "0x0000001b",
|
||||||
|
"BriefDescription": "Branch misprediction in BTB"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "BRANCH_DIRECTION_PREDICTION",
|
||||||
|
"EventCode": "0x0000001c",
|
||||||
|
"BriefDescription": "All branch prediction in BTB",
|
||||||
|
"PublicDescription": "This event including both successful prediction and failed prediction in BTB"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INTERRUPT_ACK_COUNT",
|
||||||
|
"EventCode": "0x00000023",
|
||||||
|
"BriefDescription": "acknowledged interrupt count"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "INTERRUPT_OFF_CYCLE",
|
||||||
|
"EventCode": "0x00000024",
|
||||||
|
"BriefDescription": "PLIC arbitration time when the interrupt is not responded",
|
||||||
|
"PublicDescription": "The arbitration time is recorded while meeting any of the following:\n- CPU is M-mode and MIE == 0\n- CPU is S-mode and delegation and SIE == 0\n"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "IFU_STALLED_CYCLE",
|
||||||
|
"EventCode": "0x00000027",
|
||||||
|
"BriefDescription": "Number of stall cycles of the instruction fetch unit (IFU)."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "IDU_STALLED_CYCLE",
|
||||||
|
"EventCode": "0x00000028",
|
||||||
|
"BriefDescription": "hpcp_backend_stall Number of stall cycles of the instruction decoding unit (IDU) and next-level pipeline unit."
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"EventName": "SYNC_STALL",
|
||||||
|
"EventCode": "0x00000029",
|
||||||
|
"BriefDescription": "Sync instruction stall cycle fence/fence.i/sync/sfence"
|
||||||
|
}
|
||||||
|
]
|
Loading…
Reference in New Issue
Block a user