-
Notifications
You must be signed in to change notification settings - Fork 29
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 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 <[email protected]> Tested-by: Guo Ren <[email protected]>
- Loading branch information
Showing
5 changed files
with
288 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
67 changes: 67 additions & 0 deletions
67
tools/perf/pmu-events/arch/riscv/thead/c900-legacy/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,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" | ||
} | ||
] |
68 changes: 68 additions & 0 deletions
68
tools/perf/pmu-events/arch/riscv/thead/c900-legacy/firmware.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,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" | ||
} | ||
] |
72 changes: 72 additions & 0 deletions
72
tools/perf/pmu-events/arch/riscv/thead/c900-legacy/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,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" | ||
} | ||
] |
80 changes: 80 additions & 0 deletions
80
tools/perf/pmu-events/arch/riscv/thead/c900-legacy/microarch.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,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" | ||
} | ||
] |