hi,
does anyone have any idea why 'perf mem record' is not working on a 24core, 2.3GHz AMD 7451 EPYC CPUs? we getting the error 'failed: memory events not supported'. We are using Centos 7.4, kernel 3.10.0-693.el7.x86_64, with this version of perf: perf-3.10.0-693.21.1.el7.x86_64. We are trying to find the performance of the LLC , L2 caches and memory accesses.
thanks,
yah
Hello,
It seems like perf mem <...> will only work with Intel CPUs ( at least from what I've read in the kernel source code ).
I don't know if fam17h supports that too and is just not implemented or it isn't suported at all and perf app should be fixed
up a bit to not even try that on any AMD CPUs. Someone @AMD may know.
BR
Hi yah ,
Are you able to update CentOS to version 7.5? RHEL version 7.5 improved EPYC support, in which case it may resolve the issue you are having. If after upgrading you are still having problems, please provide a list of supported memory events to help you debug it.
Thanks for the replies,
We are unable to update to centos 7.5. we are stuck on 7.4 for a while.
yah
@jesse_amd
I don't know what RH kernel looks like but on mainlain kernel , any , up2 current git there is no way
to run perf mem on AMD CPUs.
perf mem need /sys/devices/cpu/events/mem-{loads,stores}
That code only exists for Intel so far.
...
crazy@ant:~/Work/Linux/linux-git/linux$ grep -R mem-loads arch/
arch/x86/events/intel/core.c:EVENT_ATTR_STR(mem-loads, mem_ld_nhm, "event=0x0b,umask=0x10,ldlat=3");
arch/x86/events/intel/core.c:EVENT_ATTR_STR(mem-loads, mem_ld_snb, "event=0xcd,umask=0x1,ldlat=3");
arch/x86/events/intel/core.c:EVENT_ATTR_STR(mem-loads, mem_ld_hsw, "event=0xcd,umask=0x1,ldlat=3");
....
BR
This is still an issue in 2022. Is AMD working on getting DRAM measurements working in perf?