All of lore.kernel.org
 help / color / mirror / Atom feed
From: Namhyung Kim <namhyung@kernel.org>
To: Jiri Olsa <jolsa@redhat.com>
Cc: acme@redhat.com, a.p.zijlstra@chello.nl, mingo@elte.hu,
	paulus@samba.org, cjashfor@linux.vnet.ibm.com,
	fweisbec@gmail.com, linux-kernel@vger.kernel.org,
	tglx@linutronix.de, andi@firstfloor.org, drepper@gmail.com
Subject: Re: [PATCH 2/3] perf, tool: Enable grouping logic for parsed events
Date: Mon, 02 Jul 2012 11:13:56 +0900	[thread overview]
Message-ID: <87bojync4b.fsf@sejong.aot.lge.com> (raw)
In-Reply-To: <1340960907-3725-3-git-send-email-jolsa@redhat.com> (Jiri Olsa's message of "Fri, 29 Jun 2012 11:08:26 +0200")

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?

Thanks,
Namhyung


  parent reply	other threads:[~2012-07-02  2:18 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-06-29  9:08 [PATCHv3 0/3] perf tool: Add new event group management Jiri Olsa
2012-06-29  9:08 ` [PATCH 1/3] perf, tool: Add support to parse event group syntax Jiri Olsa
2012-06-29  9:08 ` [PATCH 2/3] perf, tool: Enable grouping logic for parsed events Jiri Olsa
2012-06-29 16:47   ` Arnaldo Carvalho de Melo
2012-06-29 16:53     ` Jiri Olsa
2012-07-02  2:13   ` Namhyung Kim [this message]
2012-07-02 10:10     ` Jiri Olsa
2012-07-03  0:58       ` Namhyung Kim
2012-07-04 17:34         ` Jiri Olsa
2012-07-05  0:45           ` Namhyung Kim
2012-07-05 16:05           ` Peter Zijlstra
2012-07-05 16:43             ` Arnaldo Carvalho de Melo
2012-06-29  9:08 ` [PATCH 3/3] perf, test: Add automated tests for event group parsing Jiri Olsa
2012-07-02  1:53 ` [PATCHv3 0/3] perf tool: Add new event group management Namhyung Kim
2012-07-02 10:15   ` Jiri Olsa
2012-07-02 13:11     ` Namhyung Kim
2012-07-02 13:33       ` Jiri Olsa
2012-07-02 14:20         ` Namhyung Kim
2012-07-03  0:50           ` Namhyung Kim
2012-07-03  1:04             ` Arnaldo Carvalho de Melo
2012-07-05 16:15         ` Stephane Eranian
2012-07-05 16:44           ` Arnaldo Carvalho de Melo
2012-07-06  1:06             ` Stephane Eranian
2012-07-06  1:32           ` Ulrich Drepper
2012-07-06  1:42             ` Stephane Eranian
2012-07-09 11:05               ` Jiri Olsa
2012-07-09 11:15                 ` Peter Zijlstra
2012-07-17  7:15                 ` Stephane Eranian
2012-07-17 15:47                   ` Andi Kleen
2012-07-18 10:21                   ` Jiri Olsa
2012-07-18 12:34                     ` Ulrich Drepper
2012-07-18 20:06                       ` Jiri Olsa
2012-07-05 16:09       ` Stephane Eranian
2012-07-02  2:25 ` David Ahern
2012-07-02 10:07   ` Jiri Olsa
2012-07-02 10:19 ` Peter Zijlstra

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87bojync4b.fsf@sejong.aot.lge.com \
    --to=namhyung@kernel.org \
    --cc=a.p.zijlstra@chello.nl \
    --cc=acme@redhat.com \
    --cc=andi@firstfloor.org \
    --cc=cjashfor@linux.vnet.ibm.com \
    --cc=drepper@gmail.com \
    --cc=fweisbec@gmail.com \
    --cc=jolsa@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@elte.hu \
    --cc=paulus@samba.org \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.