[<prev] [next>] [day] [month] [year] [list]
Message-ID: <CA+G8DhLzk-XbwoBbtvwnKZXXadWAqy0aApiOiS1-xPvkZb0sCA@mail.gmail.com>
Date: Thu, 18 Sep 2025 17:11:24 -0400
From: Anubhav Shelat <ashelat@...hat.com>
To: eranian@...gle.com
Cc: Arnaldo Carvalho de Melo <acme@...nel.org>, agordeev@...ux.ibm.com, ctshao@...gle.com,
gor@...ux.ibm.com, hca@...ux.ibm.com, Ian Rogers <irogers@...gle.com>,
linux-kernel@...r.kernel.org, linux-perf-users@...r.kernel.org,
linux-s390@...r.kernel.org, Namhyung Kim <namhyung@...nel.org>, peterz@...radead.org,
sumanthk@...ux.ibm.com, tmricht@...ux.ibm.com,
Michael Petlan <mpetlan@...hat.com>
Subject: Re: [PATCH] perf/test: Skip leader sampling for s390
I believe this issue is causing perf record tests to fail leader
samping on aarch64 machines. The important commands from the test:
# ./perf record -e "{cycles,cycles}:Su" -- ./perf test -w brstack
Lowering default frequency rate from 4000 to 1400.
Please consider tweaking /proc/sys/kernel/perf_event_max_sample_rate.
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.019 MB perf.data (210 samples) ]
# ./perf script -i perf.data | grep brstack
perf 98281 184091.292956: 621736 cycles:
53b844 brstack_bench+0x40 (/root/linux/tools/perf/perf)
perf 98281 184091.292956: 621765 cycles:
53b844 brstack_bench+0x40 (/root/linux/tools/perf/perf)
perf 98281 184091.293346: 611236 cycles:
53b784 brstack_bar+0x24 (/root/linux/tools/perf/perf)
perf 98281 184091.293346: 611266 cycles:
53b784 brstack_bar+0x24 (/root/linux/tools/perf/perf)
perf 98281 184091.293734: 587649 cycles:
53b844 brstack_bench+0x40 (/root/linux/tools/perf/perf)
perf 98281 184091.293734: 587678 cycles:
53b844 brstack_bench+0x40 (/root/linux/tools/perf/perf)
perf 98281 184091.294155: 648439 cycles:
53b780 brstack_bar+0x20 (/root/linux/tools/perf/perf)
perf 98281 184091.294155: 648469 cycles:
53b780 brstack_bar+0x20 (/root/linux/tools/perf/perf)
perf 98281 184091.294588: 716679 cycles:
53b844 brstack_bench+0x40 (/root/linux/tools/perf/perf)
perf 98281 184091.294588: 716709 cycles:
53b844 brstack_bench+0x40 (/root/linux/tools/perf/perf)
perf 98281 184091.295050: 779147 cycles:
53b814 brstack_bench+0x10 (/root/linux/tools/perf/perf)
perf 98281 184091.295050: 779177 cycles:
53b814 brstack_bench+0x10 (/root/linux/tools/perf/perf)
perf 98281 184091.295545: 842413 cycles:
53b8b8 brstack_bench+0xb4 (/root/linux/tools/perf/perf)
perf 98281 184091.295545: 842443 cycles:
53b8b8 brstack_bench+0xb4 (/root/linux/tools/perf/perf)
perf 98281 184091.296191: 899736 cycles:
53b77c brstack_bar+0x1c (/root/linux/tools/perf/perf)
perf 98281 184091.296191: 899766 cycles:
53b77c brstack_bar+0x1c (/root/linux/tools/perf/perf)
perf 98281 184091.296721: 914623 cycles:
53b794 brstack_bar+0x34 (/root/linux/tools/perf/perf)
perf 98281 184091.296721: 914652 cycles:
53b794 brstack_bar+0x34 (/root/linux/tools/perf/perf)
perf 98281 184091.297255: 926741 cycles:
53b7a8 brstack_bar+0x48 (/root/linux/tools/perf/perf)
perf 98281 184091.297255: 926770 cycles:
53b7a8 brstack_bar+0x48 (/root/linux/tools/perf/perf)
perf 98281 184091.297813: 966974 cycles:
53b778 brstack_bar+0x18 (/root/linux/tools/perf/perf)
perf 98281 184091.297813: 967003 cycles:
53b778 brstack_bar+0x18 (/root/linux/tools/perf/perf)
perf 98281 184091.298394: 1007743 cycles:
53b784 brstack_bar+0x24 (/root/linux/tools/perf/perf)
perf 98281 184091.298394: 1007772 cycles:
53b784 brstack_bar+0x24 (/root/linux/tools/perf/perf)
perf 98281 184091.298991: 1043010 cycles:
53b794 brstack_bar+0x34 (/root/linux/tools/perf/perf)
perf 98281 184091.298991: 1043039 cycles:
53b794 brstack_bar+0x34 (/root/linux/tools/perf/perf)
perf 98281 184091.299604: 1072961 cycles:
53b794 brstack_bar+0x34 (/root/linux/tools/perf/perf)
perf 98281 184091.299604: 1072990 cycles:
53b794 brstack_bar+0x34 (/root/linux/tools/perf/perf)
perf 98281 184091.300234: 1099175 cycles:
53b768 brstack_bar+0x8 (/root/linux/tools/perf/perf)
perf 98281 184091.300234: 1099204 cycles:
53b768 brstack_bar+0x8 (/root/linux/tools/perf/perf)
perf 98281 184091.300870: 1121830 cycles:
53b898 brstack_bench+0x94 (/root/linux/tools/perf/perf)
perf 98281 184091.300870: 1121860 cycles:
53b898 brstack_bench+0x94 (/root/linux/tools/perf/perf)
perf 98281 184091.301515: 1140634 cycles:
53b788 brstack_bar+0x28 (/root/linux/tools/perf/perf)
perf 98281 184091.301515: 1140664 cycles:
53b788 brstack_bar+0x28 (/root/linux/tools/perf/perf)
perf 98281 184091.302174: 1158251 cycles:
53b7f0 brstack_foo+0x40 (/root/linux/tools/perf/perf)
perf 98281 184091.302174: 1158281 cycles:
53b7f0 brstack_foo+0x40 (/root/linux/tools/perf/perf)
perf 98281 184091.302838: 1173750 cycles:
53b774 brstack_bar+0x14 (/root/linux/tools/perf/perf)
perf 98281 184091.302838: 1173780 cycles:
53b774 brstack_bar+0x14 (/root/linux/tools/perf/perf)
perf 98281 184091.303504: 1186018 cycles:
53b794 brstack_bar+0x34 (/root/linux/tools/perf/perf)
perf 98281 184091.303504: 1186048 cycles:
53b794 brstack_bar+0x34 (/root/linux/tools/perf/perf)
perf 98281 184091.304185: 1197272 cycles:
53b7fc brstack_foo+0x4c (/root/linux/tools/perf/perf)
perf 98281 184091.304185: 1197302 cycles:
53b7fc brstack_foo+0x4c (/root/linux/tools/perf/perf)
perf 98281 184091.304864: 1208165 cycles:
53b768 brstack_bar+0x8 (/root/linux/tools/perf/perf)
perf 98281 184091.304864: 1208194 cycles:
53b768 brstack_bar+0x8 (/root/linux/tools/perf/perf)
perf 98281 184091.306794: 1215537 cycles:
53b914 brstack+0x58 (/root/linux/tools/perf/perf)
perf 98281 184091.306794: 3426542 cycles:
53b914 brstack+0x58 (/root/linux/tools/perf/perf)
Usually the difference between the leader and sibling counts is about
30 cycles, but occasionally there's a really big difference. When
running the perf record with '-e "{cycles,cycles,cycles}:Su"' the two
sibling events have the same cycle count.
There is no difference between the leader and sibling when running on
x86 systems using the cycles event, but when using the task-clock
event, the results were similar to Thomas' on both x86 and aarch64.
Any advice would be appreciated.
Thanks,
Anubhav
Powered by blists - more mailing lists