Re: [PATCHSET v3 0/3] perf tools: Minor improvements in event synthesis

From: Arnaldo Carvalho de Melo
Date: Wed Feb 03 2021 - 08:10:49 EST


Em Tue, Feb 02, 2021 at 01:40:07PM +0100, Jiri Olsa escreveu:
> On Tue, Feb 02, 2021 at 06:01:15PM +0900, Namhyung Kim wrote:
> > Hello,
> >
> > This is to optimize the event synthesis during perf record.
> >
> > Changes in v3:
> > * remove unnecessary pid check
> > * update change log in patch #2
>
> Acked-by: Jiri Olsa <jolsa@xxxxxxxxxx>

Thanks, applied.

- Arnaldo


> thanks,
> jirka
>
> >
> > The first patch is to reduce memory usage when many threads are used.
> > The second is to avoid unncessary syscalls for kernel threads. And
> > the last one is to reduce the number of threads to iterate when new
> > threads are being created at the same time.
> >
> > Unfortunately there's no dramatic improvement here but I can see ~5%
> > gain in the 'perf bench internals synthesize' on a big machine.
> > (The numbers are not stable though)
> >
> >
> > Before:
> > # perf bench internals synthesize --mt -M1 -I 100
> > # Running 'internals/synthesize' benchmark:
> > Computing performance of multi threaded perf event synthesis by
> > synthesizing events on CPU 0:
> > Number of synthesis threads: 1
> > Average synthesis took: 68831.480 usec (+- 101.450 usec)
> > Average num. events: 9982.000 (+- 0.000)
> > Average time per event 6.896 usec
> >
> >
> > After:
> > # perf bench internals synthesize --mt -M1 -I 100
> > # Running 'internals/synthesize' benchmark:
> > Computing performance of multi threaded perf event synthesis by
> > synthesizing events on CPU 0:
> > Number of synthesis threads: 1
> > Average synthesis took: 65036.370 usec (+- 158.121 usec)
> > Average num. events: 9982.000 (+- 0.000)
> > Average time per event 6.515 usec
> >
> >
> > Thanks,
> > Namhyung
> >
> >
> > Namhyung Kim (3):
> > perf tools: Use /proc/<PID>/task/<TID>/status for synthesis
> > perf tools: Skip MMAP record synthesis for kernel threads
> > perf tools: Use scandir() to iterate threads
> >
> > tools/perf/util/synthetic-events.c | 83 +++++++++++++++++++-----------
> > 1 file changed, 53 insertions(+), 30 deletions(-)
> >
> > --
> > 2.30.0.365.g02bc693789-goog
> >
>

--

- Arnaldo