Re: [RFC 00/21] perf tools: Add toggling events support

From: Andi Kleen
Date: Wed Sep 25 2013 - 15:12:23 EST


On Wed, Sep 25, 2013 at 02:50:26PM +0200, Jiri Olsa wrote:
> hi,
> sending *RFC* for toggling events support.
>
> Adding perf interface that allows to create toggle events, which can
> enable or disable another event. Whenever the toggle event is triggered
> (has overflow), it toggles another event state and either starts or
> stops it.
>
> The goal is to be able to create toggling tracepoint events to enable and
> disable HW counters, but the interface is generic enough to be used for
> any kind of event.

Haven't read the patches, but frequent full event switch in/out seems
very expensive. If someone puts that switch on a common
function it would likely disturb things quite a bit.

It would be better to keep counting and just do RDPMC on
the switch points, and then subtract for counting.
For sampling could need a MSR write to enable/disable.
Still somewhat expensive, but nowhere near as bad as a full switch.

Another problem is that it may be very inexact, as
the counting will often happen in the background
and not be very synchronized with the switches.
Not fully sure how big a problem that would be.

-Andi

--
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/