Messages in this thread | | | From | Namhyung Kim <> | Subject | Re: [PATCH 2/3] perf, tool: Enable grouping logic for parsed events | Date | Mon, 02 Jul 2012 11:13:56 +0900 |
| |
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
| |