RISC-V: Don't report warnings when linking different privileged spec objects.
[binutils-gdb.git] / gprofng / doc / gprofng.texi
blob3600acc3d0892e3c98b62351d51a0fcaab7f77ac
1 @c ----------------------------------------------------------------------------
2 @c This is the Texinfo source file for the gprofng man page.
3 @c
4 @c Author: Ruud van der Pas
5 @c ----------------------------------------------------------------------------
6 @ifset man
7 \input texinfo @c -*-texinfo-*-
8 @setfilename gprofng
9 @settitle The next generation GNU application profiling tool
10 @include gp-macros.texi
11 @end ifset
13 @c @ManPageStart{NAME}
14 @c @ManPageStart{SYNOPSIS}
15 @c @ManPageStart{DESCRIPTION}
16 @c @ManPageStart{OPTIONS}
17 @c @ManPageStart{NOTES}
18 @c @ManPageStart{SEEALSO}
19 @c @ManPageStart{COPYRIGHT}
21 @c ----------------------------------------------------------------------------
22 @c This is from the man-pages(7) man page
24 @c "The list below shows conventional or suggested sections.  Most manual pages
25 @c  should include at least the highlighted sections.  Arrange a new manual
26 @c  page so that sections are placed in the order shown in the list."
28 @c              NAME
29 @c              SYNOPSIS
30 @c              CONFIGURATION    [Normally only in Section 4]
31 @c              DESCRIPTION
32 @c              OPTIONS          [Normally only in Sections 1, 8]
33 @c              EXIT STATUS      [Normally only in Sections 1, 8]
34 @c              RETURN VALUE     [Normally only in Sections 2, 3]
35 @c              ERRORS           [Typically only in Sections 2, 3]
36 @c              ENVIRONMENT
37 @c              FILES
38 @c              VERSIONS         [Normally only in Sections 2, 3]
39 @c              ATTRIBUTES       [Normally only in Sections 2, 3]
40 @c              CONFORMING TO
41 @c              NOTES
42 @c              BUGS
43 @c              EXAMPLES
44 @c              AUTHORS          [Discouraged]
45 @c              REPORTING BUGS   [Not used in man-pages]
46 @c              COPYRIGHT        [Not used in man-pages]
47 @c              SEE ALSO
49 @c This is what the texi2pod.pl tool recognizes:
51 @c for $sect (qw(NAME SYNOPSIS TARGET DESCRIPTION OPTIONS ENVIRONMENT FILES
52 @c               BUGS NOTES FOOTNOTES SEEALSO AUTHOR COPYRIGHT)) {
54 @c What is interesting is that it places "SEE ALSO" before "COPYRIGHT", which
55 @c makes sense and adhered to for the other formats.
56 @c ----------------------------------------------------------------------------
58 @c ----------------------------------------------------------------------------
59 @c NAME section
60 @c ----------------------------------------------------------------------------
62 @ManPageStart{NAME}
63 @c man begin NAME
65 gprofng - The driver for the gprofng application profiling tool
67 @c man end
68 @ManPageEnd{}
70 @c ----------------------------------------------------------------------------
71 @c SYNOPSIS section
72 @c ----------------------------------------------------------------------------
74 @ManPageStart{SYNOPSIS}
75 @c man begin SYNOPSIS
77 @command{gprofng} [@var{option(s)}] @var{action} [@var{qualifier}]
78 [@var{option(s)}] @var{target} [@var{options}]
80 @c man end
81 @ManPageEnd{}
83 @c ----------------------------------------------------------------------------
84 @c DESCRIPTION section
85 @c ----------------------------------------------------------------------------
87 @ManPageStart{DESCRIPTION}
88 @c man begin DESCRIPTION
90 This is the driver for the gprofng tools suite to gather and analyze
91 performance data.
93 The driver executes the @var{action} specified.  An example of an action is
94 @samp{collect} to collect performance data.  Depending on the action, a
95 @var{qualifier} may be needed to further define the command.
96 The last item is the @var{target} that the command applies to.
98 There are three places where options are supported.  The driver supports
99 options.  These can be found below.  The @var{action}, possibly in combination
100 with the @var{qualifier} also supports options.  A description of these can be
101 found in the man page for the command.  Any options needed to execute the
102 target command should follow the target name.
104 For example, to collect performance data for an application called
105 @command{a.out} and store the results in experiment directory @samp{mydata.er},
106 the following command may be used:
108 @smallexample
109 $ gprofng collect app -o mydata.er a.out -t 2
110 @end smallexample
112 In this example, the action is @samp{collect}, the qualifier is @samp{app},
113 the single argument to the command is @code{-o mydata.er} and the target is
114 @command{a.out}.  The target command is invoked with the @samp{-t 2} option.
116 If gprofng is executed without any additional option, action, or target, a
117 usage overview is printed.
119 @c man end
120 @ManPageEnd{}
122 @c ----------------------------------------------------------------------------
123 @c OPTIONS section
124 @c ----------------------------------------------------------------------------
126 @ManPageStart{OPTIONS}
127 @c man begin OPTIONS
129 @table @gcctabopt
131 @item @var{--version}
132 @ifclear man
133 @IndexSubentry{Options, @code{--version}}
134 @end ifclear
135 Print the version number and exit.
137 @item @var{--help}
138 @ifclear man
139 @IndexSubentry{Options, @code{--help}}
140 @end ifclear
141 Print usage information and exit.
143 @end table
145 @c man end
146 @ManPageEnd{}
148 @c ----------------------------------------------------------------------------
149 @c ENVIRONMENT SECTION
150 @c ----------------------------------------------------------------------------
152 @ManPageStart{ENVIRONMENT}
153 @c man begin ENVIRONMENT
155 The following environment variables are supported:
157 @table @samp
159 @item @env{GPROFNG_MAX_CALL_STACK_DEPTH}
161 @ifclear man
162 @cindex Environment variables
163 @end ifclear
165 Set the depth of the call stack (default is 256).
167 @item @env{GPROFNG_USE_JAVA_OPTIONS}
169 @ifclear man
170 @cindex Environment variables
171 @end ifclear
173 May be set when profiling a C/C++ application that uses dlopen() to execute
174 Java code.
176 @c -- deferred @item @env{GPROFNG_SSH_REMOTE_DISPLAY}
177 @c -- deferred Use this variable to define the ssh command executed by the
178 @c -- remote display tool.
180 @c -- deferred @item @env{GPROFNG_SKIP_VALIDATION}
181 @c -- deferred Set this variable to disable checking hardware, system, and
182 @c -- Java versions.
184 @item @env{GPROFNG_ALLOW_CORE_DUMP}
186 @ifclear man
187 @cindex Environment variables
188 @end ifclear
190 Set this variable to allow a core file to be generated; otherwise an error
191 report is created on @samp{/tmp}.
193 @item @env{GPROFNG_ARCHIVE}
195 @ifclear man
196 @cindex Environment variables
197 @end ifclear
199 Use this variable to define the settings for automatic archiving upon
200 experiment recording completion.
202 @item @env{GPROFNG_ARCHIVE_COMMON_DIR}
204 @ifclear man
205 @cindex Environment variables
206 @end ifclear
208 Set this variable to the location of the common archive.
210 @item @env{GPROFNG_JAVA_MAX_CALL_STACK_DEPTH}
212 @ifclear man
213 @cindex Environment variables
214 @end ifclear
216 Set the depth of the Java call stack; the default is 256; set to 0 to disable
217 capturing of call stacks.
219 @item @env{GPROFNG_JAVA_NATIVE_MAX_CALL_STACK_DEPTH}
221 @ifclear man
222 @cindex Environment variables
223 @end ifclear
225 Set the depth of the Java native call stack; the default is 256; set to 0 to
226 disable capturing of call stacks (JNI and assembly call stacks are not
227 captured).
229 @item @env{GPROFNG_SYSCONFDIR}
231 @ifclear man
232 @cindex Environment variables
233 @end ifclear
235 Set the path to the @file{gprofng.rc} configuration file.  By default, this
236 file is placed in the @file{etc} subdirectory of the binutils installation
237 directory.  In case an RPM has been used for the installation, this file is
238 in directory @file{/etc}.
240 When building and installing from the source, the user can set the path
241 to this configuration file to a non-default location.  If this is the case,
242 the user may set the @code{GPROFNG_SYSCONFDIR} environment variable to point
243 to this location.
245 Otherwise, the @command{gprofng display text}, @command{gprofng display src},
246 and @command{gprofng archive} tools cannot find this file.
248 @end table
250 @c man end
251 @ManPageEnd{}
253 @c ----------------------------------------------------------------------------
254 @c NOTES section
255 @c ----------------------------------------------------------------------------
257 @ManPageStart{NOTES}
258 @c man begin NOTES
260 The gprofng driver supports the following commands.
262 @iftex
263 @vspace{1}
264 @end iftex
266 @c The man pages for the commands below can be viewed using the command name
267 @c with the spaces replaced by a dash ("-").  For example
268 @c the man page name for "gprofng collect app" is "gprofng-collect-app".
270 @i{Collect performance data:}
272 @table @code
274 @item gprofng collect app
275 Collect application performance data.
277 @end table
279 @i{Display the performance results:}
281 @table @code
283 @item gprofng display text
284 Display the performance data in ASCII format.
286 @item gprofng display html
287 Generate an HTML file from one or more experiments.
289 @item gprofng display gui
290 Start the GUI.  Note that this tool is not available by default and needs to
291 be installed seperately.
293 @end table
295 @i{Miscellaneous commands:}
297 @table @code
299 @item gprofng display src
300 Display source or disassembly with compiler annotations.
302 @item gprofng archive
303 Include binaries and source code in an experiment directory.
305 @end table
307 It is also possible to invoke the lower level commands directly, but since
308 these are subject to change, in particular the options, we recommend to
309 use the driver.
311 The @emph{gprofng GUI} is an optional tool that provides a graphical interface
312 for @code{gprofng}.  It is easy to use and supports many views into the
313 performance data.  For those interested in this GUI, we
314 recommend to search for @code{gprofng-gui} how to obtain, install and use it.
316 @c man end
317 @ManPageEnd{}
319 @c ----------------------------------------------------------------------------
320 @c SEEALSO section
321 @c ----------------------------------------------------------------------------
323 @ManPageStart{SEE ALSO}
324 @c man begin SEEALSO
326 gprofng-archive(1),
327 gprofng-collect-app(1),
328 @c -- gprofng-display-gui(1),
329 gprofng-display-html(1),
330 gprofng-display-src(1),
331 gprofng-display-text(1)
333 @iftex
334 @vspace{1}
335 @end iftex
337 Each gprofng command also supports the @option{--help} option.  This lists the
338 options and a short description for each option.
340 For example this displays the options supported on the
341 @command{gprofng collect app} command:
343 @smallexample
344 $ gprofng collect app --help
345 @end smallexample
347 The user guide for gprofng is maintained as a Texinfo manual.  If the
348 @command{info} and @command{gprofng} programs are correctly installed, the
349 command @command{info gprofng} should give access to this document.
351 @c man end
352 @ManPageEnd{}
354 @c ----------------------------------------------------------------------------
355 @c COPYRIGHT section
356 @c ----------------------------------------------------------------------------
358 @ManPageStart{COPYRIGHT}
359 @c man begin COPYRIGHT
361 Copyright @copyright{} 2022-2024 Free Software Foundation, Inc.
363 Permission is granted to copy, distribute and/or modify this document
364 under the terms of the GNU Free Documentation License, Version 1.3
365 or any later version published by the Free Software Foundation;
366 with no Invariant Sections, with no Front-Cover Texts, and with no
367 Back-Cover Texts.  A copy of the license is included in the
368 section entitled ``GNU Free Documentation License''.
370 @c man end
371 @ManPageEnd{}
373 @c ----------------------------------------------------------------------------
374 @c If this text is used for a man page, exit.  Otherwise we need to continue.
375 @c ----------------------------------------------------------------------------
377 @ifset man
378 @bye
379 @end ifset