Messages in this thread | | | Date | Thu, 25 Nov 2010 14:19:48 +0100 | Subject | Re: [RFC PATCHv3] perf tools: add event grouping capability to "perf stat" | From | Stephane Eranian <> |
| |
On Thu, Nov 25, 2010 at 7:32 AM, Peter Zijlstra <a.p.zijlstra@chello.nl> 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). >
I think using PERF_SAMPLE_READ may expose a problem in the perf.data format. To correctly parse a sample created with SAMPLE_READ, you need to know the attr.read_format. But for that you need to know the event which caused the sample, but for that you need the SAMPLE_ID, and you don't know if it's there or not. In other words, there is a chicken and egg problem.
I think the issue is that PERF_RECORD_SAMPLE is missing a mandatory piece of information: overflow event ID. This must a mandatory field, not optional as it is today. It is okay when you have only one group, but we'd like to go beyond that. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |