Messages in this thread | | | Date | Fri, 26 Nov 2010 11:22:00 -0800 | From | Corey Ashford <> | Subject | Re: [RFC PATCHv3] perf tools: add event grouping capability to "perf stat" |
| |
On 11/24/2010 10:32 PM, Peter Zijlstra wrote: > On Wed, 2010-11-24 at 17:54 -0800, Corey Ashford wrote: >> Add the ability to create multiple event groups, each with their own leader >> using the existing "-e<event>[,<event> ...] [-e<event>[,<event>]]" >> syntax. Each additional -e switch creates a new group, and each event >> listed within a -e switch is within that group. >> >> Changes since v1: >> - Because of a flub, v2 did not contain the changes I had intended to make, >> and instead, v2 had the same patch contents as v1. >> - When perf stat is not supplied any events on the command line, put >> each default event in its own group. > > I like this, but could you also extend this to perf-record? its a bit > odd to diverge between the two. > > Using Stephane's latest syntax changes you could actually do something > like: > > perf record -e task-clock:freq=1000,cycles:period=0 > > Which would create a group with 1 sampling counter and a counting > counter (at which point we should probably start flipping > PERF_SAMPLE_READ).
Yes, that would be useful.
> > Matt was working on supporting that (although not through cmdline > syntax) and teaching perf-report to cope with such output.
I did briefly consider adding this capability to perf record, but I knew it would be a lot more complicated.
This perf stat capability is something we added to an internal version, and have been using it for more than 6 months. It's quite helpful for verifying that the kernel code for an arch is implemented correctly.
As an alternative approach, how about if instead of changing the existing syntax to perf stat, I instead add a -g/--group option which takes groups of events?
That way we won't really be diverging perf record and perf stat; we'll just have a feature that can at some point later in time be added to perf record when all of the details are worked out.
- Corey
| |