Re: [PATCH 05/34] perf, x86: Report PEBS event in a raw format

Stephane Eranian
2012-10-23T13:58:08Z

On Tue, Oct 23, 2012 at 3:45 PM, Andi Kleen <andi@firstfloor.org> wrote:
>> I believe we can use a similar approach to PERF_SAMPLE_REGS to expose
>> the PEBS machine state. We need to add PERF_SAMPLE_IREGS and then
>> return interrupt machine registers with regular sampling and the PEBS machine
>> registers in precise mode. A while back I wrote a patch to do just this. Once my
>> PEBS-LL patch is out, I will get back to it.
>
> But why not just use raw? That's far simpler and works fine and is
> already supported by perf script.
>
I have not looked at the scripts. But I am guessing they dump the content of the
PEBS records for further postprocessing by other scripts or programs.

If you do this inside perf, you have access to more infrastructure
code, e.g., dwarf.
For instance, I am interested in getting a value profiling mode. That
means sampling
the values of function arguments. That needs some dwarf support and the PEBS
machine state. With that you can produce a per function histogram of
the 6 integer
register args. You can certainly build anything in Python, but I don't
see the point
of this. Especially given that there is already some infrastructure
(and abstraction)
provided by Jiri's patch for PERF_SAMPLE_REGS.