Re: [PATCH] perf/test: Skip leader sampling for s390
From: Thomas Richter
Date: Mon Mar 03 2025 - 00:53:41 EST
On 3/1/25 01:36, Ian Rogers wrote:
> perf record --count=100000 -e '{cycles,cycles}:Su' -- perf test -w brstack
Ian, Namhyung,
here is my output using this command:
# ./perf record --count=100000 -e '{cycles,cycles}:Su' -- perf test -w brstack
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.106 MB perf.data (1080 samples) ]
# ./perf script
perf 22194 484835.185113: 100000 cycles: 3ff9e407c8c _dl_map_object_from_fd+0xa3c (/usr/lib/ld64.so.1)
perf 22194 484835.185114: 100000 cycles: 3ff9e408940 _dl_map_object+0x110 (/usr/lib/ld64.so.1)
perf 22194 484835.185116: 400000 cycles: 3ff9e40890e _dl_map_object+0xde (/usr/lib/ld64.so.1)
perf 22194 484835.185117: 900000 cycles: 3ff9e40b572 _dl_name_match_p+0x42 (/usr/lib/ld64.so.1)
perf 22194 484835.185118: 500000 cycles: 3ff9e407c8c _dl_map_object_from_fd+0xa3c (/usr/lib/ld64.so.1)
perf 22194 484835.185119: 100000 cycles: 3ff9e40b53e _dl_name_match_p+0xe (/usr/lib/ld64.so.1)
perf 22194 484835.185120: 100000 cycles: 3ff9e40890e _dl_map_object+0xde (/usr/lib/ld64.so.1)
perf 22194 484835.185121: 100000 cycles: 3ff9e408904 _dl_map_object+0xd4 (/usr/lib/ld64.so.1)
perf 22194 484835.185122: 100000 cycles: 3ff9e40369a _dl_map_object_deps+0xbba (/usr/lib/ld64.so.1)
perf 22194 484835.185123: 100000 cycles: 3ff9e413460 _dl_check_map_versions+0x100 (/usr/lib/ld64.so.1)
perf 22194 484835.185124: 500000 cycles: 3ff9e40b53e _dl_name_match_p+0xe (/usr/lib/ld64.so.1)
perf 22194 484835.185125: 100000 cycles: 3ff9e40e7e0 _dl_relocate_object+0x550 (/usr/lib/ld64.so.1)
perf 22194 484835.185126: 200000 cycles: 3ff9e40e7e0 _dl_relocate_object+0x550 (/usr/lib/ld64.so.1)
perf 22194 484835.185127: 200000 cycles: 3ff9e409558 check_match+0x18 (/usr/lib/ld64.so.1)
perf 22194 484835.185128: 200000 cycles: 3ff9e409894 do_lookup_x+0x174 (/usr/lib/ld64.so.1)
perf 22194 484835.185129: 100000 cycles: 3ff9e409910 do_lookup_x+0x1f0 (/usr/lib/ld64.so.1)
perf 22194 484835.185130: 100000 cycles: 3ff9e409b1e do_lookup_x+0x3fe (/usr/lib/ld64.so.1)
perf 22194 484835.185131: 100000 cycles: 3ff9e409894 do_lookup_x+0x174 (/usr/lib/ld64.so.1)
perf 22194 484835.185132: 100000 cycles: 3ff9e409558 check_match+0x18 (/usr/lib/ld64.so.1)
perf 22194 484835.187445: 100000 cycles: 3ff9e409ad4 do_lookup_x+0x3b4 (/usr/lib/ld64.so.1)
The difference when using counts instead of frequency is similar. Most of time the numbers are identical,
but sometime they do not match.
Using task-clock as event, I have similar results. The counts vary a bit, but the numbers are pretty close.
They vary by just a few hundred at the most:
# perf record --count=100000 -e '{task-clock,task-clock}:Su' -- perf test -w brstack
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.016 MB perf.data (246 samples) ]
]# ./perf script
perf 22223 485235.378380: 402070 task-clock: 3ffbed874c6 _dl_map_object_from_fd+0x276 (/usr/lib/ld64.so.1)
perf 22223 485235.378380: 404640 task-clock: 3ffbed874c6 _dl_map_object_from_fd+0x276 (/usr/lib/ld64.so.1)
perf 22223 485235.378779: 399960 task-clock: 3ffbed888de _dl_map_object+0xae (/usr/lib/ld64.so.1)
perf 22223 485235.378779: 397689 task-clock: 3ffbed888de _dl_map_object+0xae (/usr/lib/ld64.so.1)
perf 22223 485235.378879: 100055 task-clock: 3ffbed8e7e0 _dl_relocate_object+0x550 (/usr/lib/ld64.so.1)
perf 22223 485235.378879: 100100 task-clock: 3ffbed8e7e0 _dl_relocate_object+0x550 (/usr/lib/ld64.so.1)
perf 22223 485235.378979: 99981 task-clock: 3ffbed895ae check_match+0x6e (/usr/lib/ld64.so.1)
perf 22223 485235.378979: 99876 task-clock: 3ffbed895ae check_match+0x6e (/usr/lib/ld64.so.1)
perf 22223 485235.379079: 99950 task-clock: 3ffbed8974c do_lookup_x+0x2c (/usr/lib/ld64.so.1)
perf 22223 485235.379079: 99957 task-clock: 3ffbed8974c do_lookup_x+0x2c (/usr/lib/ld64.so.1)
perf 22223 485235.379179: 100051 task-clock: 3ffbed8e7f0 _dl_relocate_object+0x560 (/usr/lib/ld64.so.1)
perf 22223 485235.379179: 100004 task-clock: 3ffbed8e7f0 _dl_relocate_object+0x560 (/usr/lib/ld64.so.1)
perf 22223 485235.379279: 99933 task-clock: 3ffbed8e7ea _dl_relocate_object+0x55a (/usr/lib/ld64.so.1)
perf 22223 485235.379279: 99952 task-clock: 3ffbed8e7ea _dl_relocate_object+0x55a (/usr/lib/ld64.so.1)
Thanks for your help
--
Thomas Richter, Dept 3303, IBM s390 Linux Development, Boeblingen, Germany
--
IBM Deutschland Research & Development GmbH
Vorsitzender des Aufsichtsrats: Wolfgang Wendt
Geschäftsführung: David Faller
Sitz der Gesellschaft: Böblingen / Registergericht: Amtsgericht Stuttgart, HRB 243294