All of lore.kernel.org
 help / color / mirror / Atom feed
From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Ingo Molnar <mingo@kernel.org>
Cc: linux-kernel@vger.kernel.org,
	Taeung Song <treeze.taeung@gmail.com>,
	Jiri Olsa <jolsa@kernel.org>, Namhyung Kim <namhyung@kernel.org>,
	Arnaldo Carvalho de Melo <acme@redhat.com>
Subject: [PATCH 04/19] perf config: Document variables for 'call-graph' section in man page
Date: Fri,  5 Feb 2016 13:25:55 -0300	[thread overview]
Message-ID: <1454689570-12912-5-git-send-email-acme@kernel.org> (raw)
In-Reply-To: <1454689570-12912-1-git-send-email-acme@kernel.org>

See http://www.infradead.org/rpr.html

From: Taeung Song <treeze.taeung@gmail.com>

Explain 'call-graph' section and its variables:

  'record-mode', 'dump-size', 'print-type', 'order', 'sort-key',
  'threshold' and 'print-limit'.

Signed-off-by: Taeung Song <treeze.taeung@gmail.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: http://lkml.kernel.org/r/1454577913-16401-3-git-send-email-treeze.taeung@gmail.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/Documentation/perf-config.txt | 67 ++++++++++++++++++++++++++++++++
 1 file changed, 67 insertions(+)

diff --git a/tools/perf/Documentation/perf-config.txt b/tools/perf/Documentation/perf-config.txt
index 42787222ad15..42310ae7e636 100644
--- a/tools/perf/Documentation/perf-config.txt
+++ b/tools/perf/Documentation/perf-config.txt
@@ -302,6 +302,73 @@ ui.*::
 		in 'report' and 'top'. If this option is false, they are hidden.
 		This option is only applied to TUI.
 
+call-graph.*::
+	When sub-commands 'top' and 'report' work with -g/—-children
+	there're options in control of call-graph.
+
+	call-graph.record-mode::
+		The record-mode can be 'fp' (frame pointer), 'dwarf' and 'lbr'.
+		The value of 'dwarf' is effective only if perf detect needed library
+		(libunwind or a recent version of libdw).
+		'lbr' only work for cpus that support it.
+
+	call-graph.dump-size::
+		The size of stack to dump in order to do post-unwinding. Default is 8192 (byte).
+		When using dwarf into record-mode, the default size will be used if omitted.
+
+	call-graph.print-type::
+		The print-types can be graph (graph absolute), fractal (graph relative),
+		flat and folded. This option controls a way to show overhead for each callchain
+		entry. Suppose a following example.
+
+                Overhead  Symbols
+                ........  .......
+                  40.00%  foo
+                          |
+                          ---foo
+                             |
+                             |--50.00%--bar
+                             |          main
+                             |
+                              --50.00%--baz
+                                        main
+
+		This output is a 'fractal' format. The 'foo' came from 'bar' and 'baz' exactly
+		half and half so 'fractal' shows 50.00% for each
+		(meaning that it assumes 100% total overhead of 'foo').
+
+		The 'graph' uses absolute overhead value of 'foo' as total so each of
+		'bar' and 'baz' callchain will have 20.00% of overhead.
+		If 'flat' is used, single column and linear exposure of call chains.
+		'folded' mean call chains are displayed in a line, separated by semicolons.
+
+	call-graph.order::
+		This option controls print order of callchains. The default is
+		'callee' which means callee is printed at top and then followed by its
+		caller and so on. The 'caller' prints it in reverse order.
+
+		If this option is not set and report.children or top.children is
+		set to true (or the equivalent command line option is given),
+		the default value of this option is changed to 'caller' for the
+		execution of 'perf report' or 'perf top'. Other commands will
+		still default to 'callee'.
+
+	call-graph.sort-key::
+		The callchains are merged if they contain same information.
+		The sort-key option determines a way to compare the callchains.
+		A value of 'sort-key' can be 'function' or 'address'.
+		The default is 'function'.
+
+	call-graph.threshold::
+		When there're many callchains it'd print tons of lines. So perf omits
+		small callchains under a certain overhead (threshold) and this option
+		control the threshold. Default is 0.5 (%). The overhead is calculated
+		by value depends on call-graph.print-type.
+
+	call-graph.print-limit::
+		This is a maximum number of lines of callchain printed for a single
+		histogram entry. Default is 0 which means no limitation.
+
 SEE ALSO
 --------
 linkperf:perf[1]
-- 
2.5.0

  parent reply	other threads:[~2016-02-05 16:26 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-02-05 16:25 [GIT PULL 00/19] perf/core improvements and fixes Arnaldo Carvalho de Melo
2016-02-05 16:25 ` [PATCH 01/19] perf build tests: Elide "-f Makefile" from make invokation Arnaldo Carvalho de Melo
2016-02-05 16:25 ` [PATCH 02/19] perf build tests: Move the feature related vars to the front of the make cmdline Arnaldo Carvalho de Melo
2016-02-05 16:25 ` [PATCH 03/19] perf config: Document 'ui.show-headers' variable in man page Arnaldo Carvalho de Melo
2016-02-05 16:25 ` Arnaldo Carvalho de Melo [this message]
2016-02-05 16:25 ` [PATCH 05/19] perf config: Document variables for 'report' section " Arnaldo Carvalho de Melo
2016-02-05 16:25 ` [PATCH 06/19] perf config: Document 'top.children' variable " Arnaldo Carvalho de Melo
2016-02-05 16:25 ` [PATCH 07/19] perf config: Document 'man.viewer' " Arnaldo Carvalho de Melo
2016-02-05 16:25 ` [PATCH 08/19] perf config: Document 'pager.<subcommand>' variables " Arnaldo Carvalho de Melo
2016-02-05 16:26 ` [PATCH 09/19] perf config: Document 'kmem.default' variable " Arnaldo Carvalho de Melo
2016-02-05 16:26 ` [PATCH 10/19] perf config: Document 'record.build-id' " Arnaldo Carvalho de Melo
2016-02-05 16:26 ` [PATCH 11/19] perf tools: Fix parallel build including 'clean' target Arnaldo Carvalho de Melo
2016-02-05 16:26 ` [PATCH 12/19] perf build tests: Do parallell builds with 'build-test' Arnaldo Carvalho de Melo
2016-02-05 16:26 ` [PATCH 13/19] perf tools: handle spaces in file names obtained from /proc/pid/maps Arnaldo Carvalho de Melo
2016-02-05 16:26 ` [PATCH 14/19] perf symbols: add Java demangling support Arnaldo Carvalho de Melo
2016-02-05 16:26 ` [PATCH 15/19] perf build: Add libcrypto feature detection Arnaldo Carvalho de Melo
2016-02-05 16:26 ` [PATCH 16/19] perf inject: Make sure mmap records are ordered when injecting build_ids Arnaldo Carvalho de Melo
2016-02-05 16:26 ` [PATCH 17/19] perf inject: Add jitdump mmap injection support Arnaldo Carvalho de Melo
2016-02-05 16:26 ` [PATCH 18/19] perf tools: add JVMTI agent library Arnaldo Carvalho de Melo
2016-02-05 16:26 ` [PATCH 19/19] perf jit: add source line info support Arnaldo Carvalho de Melo
2016-02-09  9:40 ` [GIT PULL 00/19] perf/core improvements and fixes Ingo Molnar

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=1454689570-12912-5-git-send-email-acme@kernel.org \
    --to=acme@kernel.org \
    --cc=acme@redhat.com \
    --cc=jolsa@kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=namhyung@kernel.org \
    --cc=treeze.taeung@gmail.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.