Messages in this thread | | | Date | Sat, 1 Oct 2022 10:43:10 +0530 | Subject | Re: [PATCH v4] perf test: Introduce script for data symbol testing | From | Ravi Bangoria <> |
| |
>> +# perf mem/c2c internally uses IBS PMU on AMD CPU which doesn't support >> +# user/kernel filtering and per-process monitoring, spin program on >> +# specific CPU and test in per-CPU mode. >> +is_amd=$(egrep -c 'vendor_id.*AuthenticAMD' /proc/cpuinfo) >> +if (($is_amd >= 1)); then >> + perf mem record -o ${PERF_DATA} -- -C 0 -- taskset -c 0 $TEST_PROGRAM & > > I'm curious why it has "--" before "-C 0"..
IIRC, any command line options placed after -- will be carry forwarded as is to perf record.
perf mem record [options] does not support -C option. Which means -C 0 will be ignored if user run `perf mem record -C 0`. Ex:
$ sudo ./perf --debug perf-event-open mem record -C 0 [...] sys_perf_event_open: pid -1 cpu 0 group_fd -1 flags 0 = 5 sys_perf_event_open: pid -1 cpu 1 group_fd -1 flags 0 = 6 sys_perf_event_open: pid -1 cpu 2 group_fd -1 flags 0 = 7 sys_perf_event_open: pid -1 cpu 3 group_fd -1 flags 0 = 8
OTOH, if I place -C 0 after -- then perf opens event only on cpu0:
$ sudo ./perf --debug perf-event-open mem record -- -C 0 [...] sys_perf_event_open: pid -1 cpu 0 group_fd -1 flags 0 = 7
Now, perf mem [options] supports -C options but I don't know why it's not working for me:
$ sudo ./perf --debug perf-event-open mem -C 0 record [...] sys_perf_event_open: pid -1 cpu 0 group_fd -1 flags 0 = 5 sys_perf_event_open: pid -1 cpu 1 group_fd -1 flags 0 = 6 sys_perf_event_open: pid -1 cpu 2 group_fd -1 flags 0 = 7 sys_perf_event_open: pid -1 cpu 3 group_fd -1 flags 0 = 8
Thanks, Ravi
| |