Hi, I think pfm_get_os_event_encoding returns incorrect codes for some Intel TOPDOWN sub-events.
If I run ./check_events example program with some TOPDOWN events: ./check_events TOPDOWN:BACKEND_BOUND_SLOTS TOPDOWN:BR_MISPREDICT_SLOTS TOPDOWN:MEMORY_BOUND_SLOTS ... Requested Event: TOPDOWN:BACKEND_BOUND_SLOTS Actual Event: spr::TOPDOWN:BACKEND_BOUND_SLOTS:k=1:u=1:e=0:i=0:c=0:intx=0:intxcp=0 PMU : Intel SapphireRapid IDX : 1073741890 Codes : *0x530200* Requested Event: TOPDOWN:BR_MISPREDICT_SLOTS Actual Event: spr::TOPDOWN:BR_MISPREDICT_SLOTS:k=1:u=1:e=0:i=0:c=0:intx=0:intxcp=0 PMU : Intel SapphireRapid IDX : 1073741890 Codes : *0x530800* Requested Event: TOPDOWN:MEMORY_BOUND_SLOTS Actual Event: spr::TOPDOWN:MEMORY_BOUND_SLOTS:k=1:u=1:e=0:i=0:c=0:intx=0:intxcp=0 PMU : Intel SapphireRapid IDX : 1073741890 Codes : *0x531000* >From Intel perfmon json file at https://github.com/intel/perfmon/blob/main/SPR/events/sapphirerapids_core.json, if I understand correctly, the above codes should be *0x5302a4*, *0x5308a4*, and *0x5310a4* respectively: "EventCode": "*0xa4*", "UMask": "*0x02*", "EventName": "TOPDOWN.BACKEND_BOUND_SLOTS", "EventCode": "*0xa4*", "UMask": "*0x08*", "EventName": "TOPDOWN.BR_MISPREDICT_SLOTS", "EventCode": "*0xa4*", "UMask": "*0x10*", "EventName": "TOPDOWN.MEMORY_BOUND_SLOTS", Can someone confirm if this is correct? Laksono Adhianto
_______________________________________________ perfmon2-devel mailing list perfmon2-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/perfmon2-devel