Re: [PATCHv3 0/3] perf tool: Add new event group management

From: Jiri Olsa
Date: Mon Jul 02 2012 - 09:34:19 EST


On Mon, Jul 02, 2012 at 10:11:02PM +0900, Namhyung Kim wrote:
> 2012-07-02 (ì), 12:15 +0200, Jiri Olsa:
> > On Mon, Jul 02, 2012 at 10:53:44AM +0900, Namhyung Kim wrote:
> > > Just a question, is there a way to know about the grouping at perf
> > > report time?
> >
> > nope, AFAIK only ID and perf_event_attr is stored for event
> > grouping is known only for record time
> >
>
> I heard that Arnaldo (or Stephane) wanted to make perf report
> group-aware or such so that it can show related events together. But to
> do that, it seems we need to change the data file format first, right?
>
> Any idea?

The next change I'm working on is to record and report
PERF_FORMAT_GROUP related data. Here's commit comment
from my next patchset:

---
perf, tool: Enable sampling on specified event group leader

Adding the functionality to the group modifier event syntax.
Allowing user to select leader event inside the group using
event index (command line event position in the group).

Following example selects e2 as leader:
-e '{e1,e2,e3,e4}:2'

The selected event becomes group leader and is the only one
doing samples.

The rest of the events in the group are being read on each leader
event sample by PERF_SAMPLE_READ sample type processing.

Following example:
perf record -e {cycles,faults}:1 ls

- creates a group with 'cycles' and 'faults' events
- 'cycles' event is group leader and has sampling enabled
- 'faults' event is read each time 'cycles' sample,
the 'faults' count is attached to the 'cycles sample
via PERF_SAMPLE_READ sample type.
---

The report does not need any new metadata about grouping, because
the samples are generated/stored only from the group leader. The
other events data are read from the PERF_FORMAT_GROUP leader sample
data.

So no data file format change for my next changes, but I'm not sure
this is the report change you mean.

jirka
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/