Re: [PATCH 00/12] perf_events: add support for sampling takenbranches (v2)

From: Stephane Eranian
Date: Tue Dec 06 2011 - 14:17:50 EST


On Tue, Dec 6, 2011 at 3:03 AM, Peter Zijlstra <peterz@xxxxxxxxxxxxx> wrote:
> On Tue, 2011-12-06 at 09:49 +0000, Will Deacon wrote:
>> On Mon, Dec 05, 2011 at 10:39:26PM +0000, Peter Zijlstra wrote:
>> > On Fri, 2011-10-14 at 14:37 +0200, Stephane Eranian wrote:
>> > > This patchset adds an important and useful new feature to
>> > > perf_events: branch stack sampling. In other words, the
>> > > ability to capture taken branches into each sample.
>> > >
>> > Other than the few comments given it all looks good. My main worry is
>> > the Intel only aspect, I'd really love for there to be another platform
>> > that could implement at least part of this.
>>
>> I discussed this with Stephane in Prague and, although it would be lovely to
>> have this on ARM, we simply don't have the hardware to do it. So the nature
>> of series does seem to be x86-centric unless there's way to do a watered
>> down version in software.
>
> The only way to do this in software would be like
> CONFIG_PROFILE_ALL_BRANCHES and that's horrid (and kernel only).
>
> But there's more than Intel & ARM, but it looks like PPC doesn't have
> this either and I suspect MIPS and SPARC don't either, which doesn't
> leave us with much else.
>
There is a hardware branch buffer on all Itanium processors.
You can find the description for the McKinley implementation
(Itanium2) branch buffer in section 10.3.9 from:
http://download.intel.com/design/Itanium2/manuals/25111003.pdf

> So I guess we should just go ahead and merge this and hope more hardware
> grows this feature in a compatible enough manner.
--
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/