AnsweredAssumed Answered

Using Linux perf_event_open to sample load and store micro-ops from IBS

Question asked by msasongko17 on Jan 5, 2020
Latest reply on Feb 28, 2020 by kimphill

Hi,

 

In my research, I need to sample memory access events and collect data related to these events, such as the accessed memory addresses, the thread ids that perform accesses, etc. I plan to do it by using perf_event_open system call (https://linux.die.net/man/2/perf_event_open) to configure AMD's IBS to sample these events. The problem is I cannot find any documentation on the hardware event numbers of AMD processors that I can pass to perf_event_open. For Intel, hardware event numbers are listed in Intel® 64 and IA32 Architectures Performance Monitoring Events | Intel® Software . Can anyone direct me to a similar document for AMD machines? Or, if IBS cannot be configured with perf_event_open, can anyone share me a tutorial on how to configure and access IBS data?

 

The AMD machine that I am using is an AMD EPYC 7551 32-core processor running Linux 5.0.0 kernel.

Outcomes