summaryrefslogtreecommitdiffstats
path: root/upstream/debian-unstable/man1/gprofng.1
blob: 780cfca351931ae47c63249dbed23c1c7ce3e097 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
.\" -*- mode: troff; coding: utf-8 -*-
.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
.ie n \{\
.    ds C` ""
.    ds C' ""
'br\}
.el\{\
.    ds C`
.    ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el       .ds Aq '
.\"
.\" If the F register is >0, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD.  Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.\"
.\" Avoid warning from groff about undefined register 'F'.
.de IX
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
.if (\n(rF:(\n(.g==0)) \{\
.    if \nF \{\
.        de IX
.        tm Index:\\$1\t\\n%\t"\\$2"
..
.        if !\nF==2 \{\
.            nr % 0
.            nr F 2
.        \}
.    \}
.\}
.rr rF
.\" ========================================================================
.\"
.IX Title "GPROFNG.1 1"
.TH GPROFNG.1 1 2024-03-19 binutils-2.42 "User Commands"
.\" For nroff, turn off justification.  Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH NAME
gprofng \- The next generation GNU application profiling tool
.SH SYNOPSIS
.IX Header "SYNOPSIS"
\&\fBgprofng\fR [\fIoption(s)\fR] \fIaction\fR [\fIqualifier\fR]
[\fIoption(s)\fR] \fItarget\fR [\fIoptions\fR]
.SH DESCRIPTION
.IX Header "DESCRIPTION"
This is the driver for the gprofng tools suite to gather and analyze
performance data.
.PP
The driver executes the \fIaction\fR specified.  An example of an action is
\&\fBcollect\fR to collect performance data.  Depending on the action, a
\&\fIqualifier\fR may be needed to further define the command.
The last item is the \fItarget\fR that the command applies to.
.PP
There are three places where options are supported.  The driver supports
options.  These can be found below.  The \fIaction\fR, possibly in combination
with the \fIqualifier\fR also supports options.  A description of these can be
found in the man page for the command.  Any options needed to execute the
target command should follow the target name.
.PP
For example, to collect performance data for an application called
\&\fBa.out\fR and store the results in experiment directory \fBmydata.er\fR,
the following command may be used:
.PP
.Vb 1
\&        $ gprofng collect app \-o mydata.er a.out \-t 2
.Ve
.PP
In this example, the action is \fBcollect\fR, the qualifier is \fBapp\fR,
the single argument to the command is \f(CW\*(C`\-o mydata.er\*(C'\fR and the target is
\&\fBa.out\fR.  The target command is invoked with the \fB\-t 2\fR option.
.PP
If gprofng is executed without any additional option, action, or target, a
usage overview is printed.
.SH OPTIONS
.IX Header "OPTIONS"
.IP \fI\-\-version\fR 4
.IX Item "--version"
Print the version number and exit.
.IP \fI\-\-help\fR 4
.IX Item "--help"
Print usage information and exit.
.SH ENVIRONMENT
.IX Header "ENVIRONMENT"
The following environment variables are supported:
.IP \fBGPROFNG_MAX_CALL_STACK_DEPTH\fR 4
.IX Item "GPROFNG_MAX_CALL_STACK_DEPTH"
Set the depth of the call stack (default is 256).
.IP \fBGPROFNG_USE_JAVA_OPTIONS\fR 4
.IX Item "GPROFNG_USE_JAVA_OPTIONS"
May be set when profiling a C/C++ application that uses \fBdlopen()\fR to execute
Java code.
.IP \fBGPROFNG_ALLOW_CORE_DUMP\fR 4
.IX Item "GPROFNG_ALLOW_CORE_DUMP"
Set this variable to allow a core file to be generated; otherwise an error
report is created on \fB/tmp\fR.
.IP \fBGPROFNG_ARCHIVE\fR 4
.IX Item "GPROFNG_ARCHIVE"
Use this variable to define the settings for automatic archiving upon
experiment recording completion.
.IP \fBGPROFNG_ARCHIVE_COMMON_DIR\fR 4
.IX Item "GPROFNG_ARCHIVE_COMMON_DIR"
Set this variable to the location of the common archive.
.IP \fBGPROFNG_JAVA_MAX_CALL_STACK_DEPTH\fR 4
.IX Item "GPROFNG_JAVA_MAX_CALL_STACK_DEPTH"
Set the depth of the Java call stack; the default is 256; set to 0 to disable
capturing of call stacks.
.IP \fBGPROFNG_JAVA_NATIVE_MAX_CALL_STACK_DEPTH\fR 4
.IX Item "GPROFNG_JAVA_NATIVE_MAX_CALL_STACK_DEPTH"
Set the depth of the Java native call stack; the default is 256; set to 0 to
disable capturing of call stacks (JNI and assembly call stacks are not
captured).
.IP \fBGPROFNG_SYSCONFDIR\fR 4
.IX Item "GPROFNG_SYSCONFDIR"
Set the path to the \fIgprofng.rc\fR configuration file.  By default, this
file is placed in the \fIetc\fR subdirectory of the binutils installation
directory.  In case an RPM has been used for the installation, this file is
in directory \fI/etc\fR.
.Sp
When building and installing from the source, the user can set the path
to this configuration file to a non-default location.  If this is the case,
the user may set the \f(CW\*(C`GPROFNG_SYSCONFDIR\*(C'\fR environment variable to point
to this location.
.Sp
Otherwise, the \fBgp-display-text\fR, \fBgp-display-src\fR, and
\&\fBgp-archive\fR tools cannot find this file.
.SH NOTES
.IX Header "NOTES"
The gprofng driver supports the following commands.
.PP
\&\fICollect performance data:\fR
.ie n .IP """gprofng collect app""" 4
.el .IP "\f(CWgprofng collect app\fR" 4
.IX Item "gprofng collect app"
Collect application performance data.
.PP
\&\fIDisplay the performance results:\fR
.ie n .IP """gprofng display text""" 4
.el .IP "\f(CWgprofng display text\fR" 4
.IX Item "gprofng display text"
Display the performance data in ASCII format.
.ie n .IP """gprofng display html""" 4
.el .IP "\f(CWgprofng display html\fR" 4
.IX Item "gprofng display html"
Generate an HTML file from one or more experiments.
.ie n .IP """gprofng display gui""" 4
.el .IP "\f(CWgprofng display gui\fR" 4
.IX Item "gprofng display gui"
Start the GUI.  Note that this tool is not available by default and needs to
be installed seperately.
.PP
\&\fIMiscellaneous commands:\fR
.ie n .IP """gprofng display src""" 4
.el .IP "\f(CWgprofng display src\fR" 4
.IX Item "gprofng display src"
Display source or disassembly with compiler annotations.
.ie n .IP """gprofng archive""" 4
.el .IP "\f(CWgprofng archive\fR" 4
.IX Item "gprofng archive"
Include binaries and source code in an experiment directory.
.PP
It is also possible to invoke the lower level commands directly, but since
these are subject to change, in particular the options, we recommend to
use the driver.
.SH "SEE ALSO"
.IX Header "SEE ALSO"
\&\fBgp\-archive\fR\|(1),
\&\fBgp\-collect\-app\fR\|(1),
\&\fBgp\-display\-gui\fR\|(1),
\&\fBgp\-display\-html\fR\|(1),
\&\fBgp\-display\-src\fR\|(1),
\&\fBgp\-display\-text\fR\|(1)
.PP
Each gprofng command also supports the \fB\-\-help\fR option.  This lists the
options and a short description for each option.
.PP
For example this displays the options supported on the
\&\fBgprofng collect app\fR command:
.PP
.Vb 1
\&        $ gprofng collect app \-\-help
.Ve
.PP
The user guide for gprofng is maintained as a Texinfo manual.  If the
\&\fBinfo\fR and \fBgprofng\fR programs are correctly installed, the
command \fBinfo gprofng\fR should give access to this document.
.SH COPYRIGHT
.IX Header "COPYRIGHT"
Copyright (c) 2022\-2024 Free Software Foundation, Inc.
.PP
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3
or any later version published by the Free Software Foundation;
with no Invariant Sections, with no Front-Cover Texts, and with no
Back-Cover Texts.  A copy of the license is included in the
section entitled "GNU Free Documentation License".