[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20120702101010.GB967@krava.redhat.com>
Date: Mon, 2 Jul 2012 12:10:10 +0200
From: Jiri Olsa <jolsa@...hat.com>
To: Namhyung Kim <namhyung@...nel.org>
Cc: acme@...hat.com, a.p.zijlstra@...llo.nl, mingo@...e.hu,
paulus@...ba.org, cjashfor@...ux.vnet.ibm.com, fweisbec@...il.com,
linux-kernel@...r.kernel.org, tglx@...utronix.de,
andi@...stfloor.org, drepper@...il.com
Subject: Re: [PATCH 2/3] perf, tool: Enable grouping logic for parsed events
On Mon, Jul 02, 2012 at 11:13:56AM +0900, Namhyung Kim wrote:
> On Fri, 29 Jun 2012 11:08:26 +0200, Jiri Olsa wrote:
> > This patch adds a functionality that allows to create event groups
> > based on the way they are specified on the command line. Adding
> > functionality to the '{}' group syntax introduced in earlier patch.
> >
> > The current '--group/-g' option behaviour remains intact. If you
> > specify it for record/stat/top command, all the specified events
> > become members of a single group with the first event as a group
> > leader.
> >
> > With the new '{}' group syntax you can create group like:
> > # perf record -e '{cycles,faults}' ls
> >
> > resulting in single event group containing 'cycles' and 'faults'
> > events, with cycles event as group leader.
> >
> > All groups are created with regards to threads and cpus. Thus
> > recording an event group within a 2 threads on server with
> > 4 CPUs will create 8 separate groups.
> >
> > Examples (first event in brackets is group leader):
> >
> > # 1 group (cpu-clock,task-clock)
> > perf record --group -e cpu-clock,task-clock ls
> > perf record -e '{cpu-clock,task-clock}' ls
> >
> > # 2 groups (cpu-clock,task-clock) (minor-faults,major-faults)
> > perf record -e '{cpu-clock,task-clock},{minor-faults,major-faults}' ls
> >
> > # 1 group (cpu-clock,task-clock,minor-faults,major-faults)
> > perf record --group -e cpu-clock,task-clock -e minor-faults,major-faults ls
> > perf record -e '{cpu-clock,task-clock,minor-faults,major-faults}' ls
> >
> > # 2 groups (cpu-clock,task-clock) (minor-faults,major-faults)
> > perf record -e '{cpu-clock,task-clock} -e '{minor-faults,major-faults}' \
> > -e instructions ls
> >
> > # 1 group (cpu-clock,task-clock,minor-faults,major-faults,instructions)
> > perf record --group -e cpu-clock,task-clock \
> > -e minor-faults,major-faults -e instructions ls
> > perf record -e '{cpu-clock,task-clock,minor-faults,major-faults,instructions}' ls
> >
> > It's possible to use standard event modifier for a group, which spans
> > over all events in the group and overrides any event modifier settings,
> > for example:
> >
> > # perf record -r '{faults:k,cache-references}:u'
> >
> > resulting in ':u' modifier being used for both 'faults' and 'cache-references'
> > events, regardless of their modifier setup (':k' for faults event).
> >
>
> So the faults event would get only 'u' for the modifier not 'uk', right?
right
jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists