Thread (11 messages) 11 messages, 3 authors, 2017-04-08

Re: [PATCH v2 2/5] perf/x86/intel: Record branch type

From: Peter Zijlstra <peterz@infradead.org>
Date: 2017-04-07 17:20:38
Also in: lkml

On Fri, Apr 07, 2017 at 09:48:34AM -0700, Andi Kleen wrote:
On Fri, Apr 07, 2017 at 05:20:31PM +0200, Peter Zijlstra wrote:
quoted
On Fri, Apr 07, 2017 at 06:47:43PM +0800, Jin Yao wrote:
quoted
Perf already has support for disassembling the branch instruction
and using the branch type for filtering. The patch just records
the branch type in perf_branch_entry.

Before recording, the patch converts the x86 branch classification
to common branch classification and compute for checking if the
branches cross 4K or 2MB areas. It's an approximate computing for
crossing 4K page or 2MB page.
The changelog is completely empty of rationale. Why do we care?

Not having the binary is a very bad reason; you can't do much of
anything if that's missing.
It's a somewhat common situation with partially JITed code, if you
don't have an agent. You can still do a lot of useful things.
Like what? How can you say anything about code you don't have?
We found it useful to have this extra information during workload
analysis. Forward conditionals and page crossing jumps
are indications of frontend problems.
But you already have the exact same information in {to,from}, why would
you need to repackage information already contained?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help