[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <CAM9d7ci24NW9mn6FBOER_ut=AmgSB5x=8xD8Xhakt1Sxz+62vw@mail.gmail.com>
Date: Tue, 10 Aug 2021 21:33:59 -0700
From: Namhyung Kim <namhyung@...nel.org>
To: Jiri Olsa <jolsa@...hat.com>
Cc: Arnaldo Carvalho de Melo <acme@...nel.org>,
Ingo Molnar <mingo@...nel.org>,
Peter Zijlstra <peterz@...radead.org>,
LKML <linux-kernel@...r.kernel.org>,
Andi Kleen <ak@...ux.intel.com>,
Ian Rogers <irogers@...gle.com>,
Stephane Eranian <eranian@...gle.com>,
Adrian Hunter <adrian.hunter@...el.com>,
Jin Yao <yao.jin@...ux.intel.com>
Subject: Re: [PATCH v2 2/2] perf record: Add --synth option
Hi Jiri,
On Mon, Jul 26, 2021 at 6:15 AM Jiri Olsa <jolsa@...hat.com> wrote:
>
> On Fri, Jul 23, 2021 at 09:01:29PM -0700, Namhyung Kim wrote:
> > Add an option to control synthesize behavior.
> >
> > --synth <no|all|task|mmap|cgroup>
> > Fine-tune event synthesis: default=all
> >
> > This can be useful when we know it doesn't need some synthesis like
> > in a specific usecase and/or when using pipe:
> >
> > $ perf record -a --all-cgroups --synth cgroup -o- sleep 1 | \
> > > perf report -i- -s cgroup
> >
> > Signed-off-by: Namhyung Kim <namhyung@...nel.org>
> > ---
> > tools/perf/Documentation/perf-record.txt | 9 +++++
> > tools/perf/builtin-record.c | 48 +++++++++++++++++++-----
> > tools/perf/util/record.h | 1 +
> > tools/perf/util/synthetic-events.c | 28 ++++++++++++++
> > tools/perf/util/synthetic-events.h | 12 ++++++
> > 5 files changed, 89 insertions(+), 9 deletions(-)
> >
> > diff --git a/tools/perf/Documentation/perf-record.txt b/tools/perf/Documentation/perf-record.txt
> > index d71bac847936..03a41bec0583 100644
> > --- a/tools/perf/Documentation/perf-record.txt
> > +++ b/tools/perf/Documentation/perf-record.txt
> > @@ -596,6 +596,15 @@ options.
> > 'perf record --dry-run -e' can act as a BPF script compiler if llvm.dump-obj
> > in config file is set to true.
> >
> > +--synth=TYPE::
> > +Collect and synthesize given type of events (comma separated).
> > +Available types are:
> > + 'task' - synthesize FORK and COMM events for each task
> > + 'mmap' - synthesize MMAP events for each process (implies 'task')
> > + 'cgroup' - synthesize CGROUP events for each cgroup
> > + 'all' - synthesize all events (default)
> > + 'no' - do not synthesize any of the above events
>
> this only affects events we take from proc right?
Right.
>
> should we perhaps mention it, because you'll get mmap
> events from kernel even if you specify --synth=task
Good point, will update.
Thanks,
Namhyung
Powered by blists - more mailing lists