Re: [PATCH] perf/x86/intel/lbr: Optimize context switches for LBR
From: Alexey Budankov
Date: Fri Sep 14 2018 - 05:23:00 EST
Hi Andi,
On 14.09.2018 11:54, Andi Kleen wrote:
>>> In principle the LBRs need to be flushed between threads. So does
>>> current code.
>>
>> IMHO, ideally, LBRs stack would be preserved and restored when
>> switching between execution stacks. That would allow implementing
>> per-thread statistical call graph view in Perf tools, fully based
>> on HW capabilities. It could be advantageous for some cases, in
>> comparison with traditional dwarf based call graph.
>
> This is already supported when you use LBR call stack mode
> (perf record --call-graph lbr)
Which kernel versions does it make sense to try?
Thanks,
Alexey
>
> This change is only optimizing the case when call stack mode is not used.
>
> Of course in call stack mode the context switch overhead is even higher,
> because it not only writes, but also reads.
>
> -Andi
>