AnsweredAssumed Answered

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

Question asked by msasongko17 on Jan 3, 2020
Latest reply on Jan 7, 2020 by hardcoregames™



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 ( 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 direct me to 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.