Re: [PATCH V3 06/11] perf record: Add an option to force per-cpummaps
From: Jiri Olsa
Date: Tue Nov 05 2013 - 04:42:47 EST
On Tue, Nov 05, 2013 at 10:28:38AM +0200, Adrian Hunter wrote:
> On 04/11/13 17:29, Jiri Olsa wrote:
> > On Fri, Nov 01, 2013 at 03:51:34PM +0200, Adrian Hunter wrote:
> >> By default, when tasks are specified (i.e. -p, -t
> >> or -u options) per-thread mmaps are created. Add
> >> an option to override that and force per-cpu mmaps.
> >> Signed-off-by: Adrian Hunter <adrian.hunter@xxxxxxxxx>
> >> ---
> >> tools/perf/Documentation/perf-record.txt | 6 ++++++
> >> tools/perf/builtin-record.c | 2 ++
> >> tools/perf/util/evlist.c | 4 +++-
> >> tools/perf/util/evsel.c | 4 ++--
> >> tools/perf/util/target.h | 1 +
> >> 5 files changed, 14 insertions(+), 3 deletions(-)
> >> diff --git a/tools/perf/Documentation/perf-record.txt b/tools/perf/Documentation/perf-record.txt
> >> index f10ab63..2ea6685 100644
> >> --- a/tools/perf/Documentation/perf-record.txt
> >> +++ b/tools/perf/Documentation/perf-record.txt
> >> @@ -189,6 +189,12 @@ abort events and some memory events in precise mode on modern Intel CPUs.
> >> --transaction::
> >> Record transaction flags for transaction related events.
> >> +--force-per-cpu::
> >> +Force the use of per-cpu mmaps. By default, when tasks are specified (i.e. -p,
> >> +-t or -u options) per-thread mmaps are created. This option overrides that and
> >> +forces per-cpu mmaps. A side-effect of that is that inheritance is
> >> +automatically enabled. Add the -i option also to disable inheritance.
> > I recently sent out patch that actually force perf cpu mmaps for -p,-t,-u
> > http://marc.info/?l=linux-kernel&m=138332119912433&w=2
> > Is there a reason why would you want to keep single
> > mmap (in record command) and cut yourself from inherited
> > events?
> Not sure I understand the question.
> perf supports having a single context for a thread. That is a
> feature. You seem to be removing perf tools support for it.
> I image a case where the user has hundreds of CPUs but just
> wants to record one thread. Currently -t does that. i.e.
> one file descriptor and one mmap saving megabytes of memory.
> Another advantage of per-thread mmaps is that you do not
> need to sample time (nor cpu), because the events are recorded
> in order.
> I was adding a feature. Users can choose per-cpu mmaps if
> they want.
right, I haven't considered the hundreds CPU machine.. I just
saw that it disables inherited events in my test ;-) maybe we
could mentioned that somewhere, because it's not clear
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/