Messages in this thread |  | | | Date | Thu, 22 Mar 2012 09:40:49 -0300 | | From | Arnaldo Carvalho de Melo <> | | Subject | Re: [PATCH 3/3] perf, tool: Add new event group management |
| |
Em Wed, Mar 21, 2012 at 11:27:24PM +0100, Jiri Olsa escreveu: > On Wed, Mar 21, 2012 at 12:11:19PM -0300, Arnaldo Carvalho de Melo wrote: > > Em Wed, Mar 21, 2012 at 11:42:14AM +0100, Jiri Olsa escreveu: > > > On Tue, Mar 20, 2012 at 07:44:41PM +0100, Peter Zijlstra wrote: > > > > If so, we need some option like: > > > > > > > > perf record -e "{cpu-clock,cache-misses,cache-references}:1" > > > > > > > > to mean, only sample on cpu-clock but use PERF_SAMPLE_READ and > > > > PERF_FORMAT_GROUP to read all siblings on every cpu-clock sample. > > > > > > > > Now the disadvantage is that {} needs quotes on bash, the advantage is > > > > that its completely natural on how to construct groups, without weird > > > > --group/--group parsed. Also it provides a place for group modifiers. > > > > > > how about '=group' keyword followed by ':' modifier > > > perf record -e "cpu-clock,cache-misses,cache-references=group:1" > > > > > > or '=$groupname' and use the group name in output like > > > perf stat -e "task-clock,context-switches=krava:1" ls > > > > > > Performance counter stats for 'ls': > > > > > > 1.003695 task-clock/krava # 0.083 CPUs utilized > > > 0 context-switches/krava # 0.000 K/sec > > > > > > > Humm, interesting, perhaps putting the group name before the =event_list > > will be more intuitive? > > > > I.e.: > > > > perf stat -e "krava=task-clock,context-switches:1" ls > > yep, I put it at the end because of the ':' modifier stuff. > We have it for each event, and it'd be in conflict having > it at the end.. > > maybe we could put it like: > perf stat -e "krava:1=task-clock,context-switches" ls > > or put some other separator instead of ':' ... but ':' is the best ;)
That thought crossed my mind as well, indeed it seems more intuitive: everything before the '=' defines the group wide attributes (name, modifiers, whatevever else we need later) after it, the evlist, where each evsel can have its own attributes.
- Arnaldo
|  |