From: Andi Kleen <andi@firstfloor.org>
To: acme@redhat.com
Cc: mingo@kernel.org, linux-kernel@vger.kernel.org,
eranian@google.com, namhyung@kernel.org, jolsa@redhat.com
Subject: perf: Implement lbr-as-callgraph v4
Date: Thu, 27 Feb 2014 20:22:24 -0800 [thread overview]
Message-ID: <1393561352-23448-1-git-send-email-andi@firstfloor.org> (raw)
[All review feedback addressed.]
This patchkit implements lbr-as-callgraphs in per freport,
as an alternative way to present LBR information.
Current perf report does a histogram over the branch edges,
which is useful to look at basic blocks, but doesn't tell
you anything about the larger control flow behaviour.
This patchkit adds a new option --branch-history that
adds the branch paths to the callgraph history instead.
This allows to reason about individual branch paths leading
to specific samples.
Also improves srcline display in various ways to make
branches better understandable.
Also available at
git://git.kernel.org/pub/scm/linux/kernel/git/ak/linux-misc perf/lbr-callgraph4
Example output:
% perf record -b -g ./tsrc/tcall
[ perf record: Woken up 1 times to write data ]
[ perf record: Captured and wrote 0.044 MB perf.data (~1923 samples) ]
% perf report --branch-history
...
54.91% tcall.c:6 [.] f2 tcall
|
|--65.53%-- f2 tcall.c:5
| |
| |--70.83%-- f1 tcall.c:11
| | f1 tcall.c:10
| | main tcall.c:18
| | main tcall.c:18
| | main tcall.c:17
| | main tcall.c:17
| | f1 tcall.c:13
| | f1 tcall.c:13
| | f2 tcall.c:7
| | f2 tcall.c:5
| | f1 tcall.c:12
| | f1 tcall.c:12
| | f2 tcall.c:7
| | f2 tcall.c:5
| | f1 tcall.c:11
v2:
- rebased on perf/core
- fix various issues
- rename the option to --branch-history
- various fixes to display the information more concise
v3:
- White space changes
- Consolidate some patches
- Update some descriptions
v4:
- Fix various display problems
- Unknown srcline is now printed as symbol+offset
- Refactor some code to address review feedback
- Merge with latest tip
- Fix missing srcline display in stdio hist output.
next reply other threads:[~2014-02-28 4:22 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-28 4:22 Andi Kleen [this message]
2014-02-28 4:22 ` [PATCH 1/8] perf, tools: fix BFD detection on opensuse Andi Kleen
2014-02-28 4:22 ` [PATCH 2/8] perf, tools: Support handling complete branch stacks as histograms v4 Andi Kleen
2014-03-05 10:29 ` Jiri Olsa
2014-03-05 15:31 ` Andi Kleen
2014-03-07 13:19 ` Jiri Olsa
2014-03-07 13:19 ` Jiri Olsa
2014-03-07 19:51 ` Arnaldo Carvalho de Melo
2014-03-07 19:54 ` Arnaldo Carvalho de Melo
2014-03-11 0:43 ` Andi Kleen
2014-02-28 4:22 ` [PATCH 3/8] perf, tools: Add --branch-history option to report v2 Andi Kleen
2014-03-07 13:19 ` Jiri Olsa
2014-03-11 0:31 ` Andi Kleen
2014-03-11 15:25 ` Jiri Olsa
2014-03-11 20:21 ` Andi Kleen
2014-02-28 4:22 ` [PATCH 4/8] perf, tools: Enable printing the srcline in the history v2 Andi Kleen
2014-03-01 16:22 ` Andi Kleen
2014-02-28 4:22 ` [PATCH 5/8] perf, tools: Only print base source file for srcline Andi Kleen
2014-02-28 4:22 ` [PATCH 6/8] perf, tools: Support source line numbers in annotate Andi Kleen
2014-02-28 4:22 ` [PATCH 7/8] perf, tools: Fix srcline sort key output to use width Andi Kleen
2014-02-28 4:22 ` [PATCH 8/8] tools, perf: Make get_srcline fall back to sym+offset Andi Kleen
2014-03-07 13:19 ` Jiri Olsa
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1393561352-23448-1-git-send-email-andi@firstfloor.org \
--to=andi@firstfloor.org \
--cc=acme@redhat.com \
--cc=eranian@google.com \
--cc=jolsa@redhat.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@kernel.org \
--cc=namhyung@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®