On Mon, Jun 19, 2017 at 01:46:39PM +0100, Mark Rutland wrote:
On Fri, Jun 16, 2017 at 05:22:29PM +0300, Alexey Budankov wrote:
On 16.06.2017 17:08, Alexey Budankov wrote:
On 16.06.2017 12:09, Mark Rutland wrote:
There's a --per-thread option to ask perf record to not duplicate the
event per-cpu.
If you use that, what amount of slowdown do you see?
After applying all three patches:
- system-wide collection:
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 303.795 MB perf.data (~13272985 samples) ]
2162.08user 176.24system 0:12.97elapsed 18021%CPU (0avgtext+0avgdata
1187208maxresident)k
0inputs+622624outputs (0major+1360285minor)pagefaults 0swaps
- per-process collection:
[ perf record: Woken up 5 times to write data ]
[ perf record: Captured and wrote 1.079 MB perf.data (~47134 samples) ]
2102.39user 153.88system 0:12.78elapsed 17645%CPU (0avgtext+0avgdata
1187156maxresident)k
0inputs+2272outputs (0major+1181660minor)pagefaults 0swaps
Elapsed times look similar. Data file sizes differ significantly.
Interesting. I wonder if that's because we're losing samples due to
hammering the rb, or if that's a side-effect of this patch.
Does perf report describe any lost chunks?
For comparison, can you give --per-thread a go prior to these patches
being applied?
FWIW, I had a go with (an old) perf record on an arm64 system using
--per-thread, and I see that no samples are recorded, which seems like a
bug.
With --per-thread, the slwodown was ~20%, whereas with the defaults it
was > 400%.
Thanks,
Mark.