On Thu, Jun 01, 2017 at 02:33:20PM +0200, Jiri Slaby wrote:
> On 06/01/2017, 02:17 PM, Peter Zijlstra wrote:
> > On Thu, Jun 01, 2017 at 06:58:20AM -0500, Josh Poimboeuf wrote:
> >>> Being able to generate more optimal code in the hottest code paths of the 
> >>> kernel 
> >>> is the _real_, primary upstream kernel benefit of a different debuginfo 
> >>> method - 
> >>> which has to be weighed against the pain of introducing a new unwinder. 
> >>> But this 
> >>> submission does not talk about that aspect at all, which should be fixed 
> >>> I think.
> >>
> >> Actually I devoted an entire one-sentence paragraph to performance in
> >> the documentation:
> >>
> >>   The simpler debuginfo format also enables the unwinder to be relatively
> >>   fast, which is important for perf and lockdep.
> >>
> >> But I'll try to highlight that a little more.
> > 
> > That's relative to a DWARF unwinder. It doesn't appear to be possible to
> > get anywhere near a frame-pointer unwinder due to having to do this
> > log(n) lookup for every single frame.
> 
> This is ~ 20 times faster than my DWARF unwinder by a quick measurement
> (20000 calls to save_stack_trace via single vfs_write).

Wow!  Thanks for quantifying that.  Looks like the lookup is indeed the
bottleneck as expected.

-- 
Josh

Reply via email to