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 12 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} 20 21 @c ---------------------------------------------------------------------------- 22 @c This is from the man-pages(7) man page 23 @c 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." 27 @c 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 48 @c 49 @c This is what the texi2pod.pl tool recognizes: 50 @c 51 @c for $sect (qw(NAME SYNOPSIS TARGET DESCRIPTION OPTIONS ENVIRONMENT FILES 52 @c BUGS NOTES FOOTNOTES SEEALSO AUTHOR COPYRIGHT)) { 53 @c 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 ---------------------------------------------------------------------------- 57 58 @c ---------------------------------------------------------------------------- 59 @c NAME section 60 @c ---------------------------------------------------------------------------- 61 62 @ManPageStart{NAME} 63 @c man begin NAME 64 65 gprofng - The driver for the gprofng application profiling tool 66 67 @c man end 68 @ManPageEnd{} 69 70 @c ---------------------------------------------------------------------------- 71 @c SYNOPSIS section 72 @c ---------------------------------------------------------------------------- 73 74 @ManPageStart{SYNOPSIS} 75 @c man begin SYNOPSIS 76 77 @command{gprofng} [@var{option(s)}] @var{action} [@var{qualifier}] 78 [@var{option(s)}] @var{target} [@var{options}] 79 80 @c man end 81 @ManPageEnd{} 82 83 @c ---------------------------------------------------------------------------- 84 @c DESCRIPTION section 85 @c ---------------------------------------------------------------------------- 86 87 @ManPageStart{DESCRIPTION} 88 @c man begin DESCRIPTION 89 90 This is the driver for the gprofng tools suite to gather and analyze 91 performance data. 92 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. 97 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. 103 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: 107 108 @smallexample 109 $ gprofng collect app -o mydata.er a.out -t 2 110 @end smallexample 111 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. 115 116 If gprofng is executed without any additional option, action, or target, a 117 usage overview is printed. 118 119 @c man end 120 @ManPageEnd{} 121 122 @c ---------------------------------------------------------------------------- 123 @c OPTIONS section 124 @c ---------------------------------------------------------------------------- 125 126 @ManPageStart{OPTIONS} 127 @c man begin OPTIONS 128 129 @table @gcctabopt 130 131 @item @var{--version} 132 @ifclear man 133 @IndexSubentry{Options, @code{--version}} 134 @end ifclear 135 Print the version number and exit. 136 137 @item @var{--help} 138 @ifclear man 139 @IndexSubentry{Options, @code{--help}} 140 @end ifclear 141 Print usage information and exit. 142 143 @end table 144 145 @c man end 146 @ManPageEnd{} 147 148 @c ---------------------------------------------------------------------------- 149 @c ENVIRONMENT SECTION 150 @c ---------------------------------------------------------------------------- 151 152 @ManPageStart{ENVIRONMENT} 153 @c man begin ENVIRONMENT 154 155 The following environment variables are supported: 156 157 @table @samp 158 159 @item @env{GPROFNG_MAX_CALL_STACK_DEPTH} 160 161 @ifclear man 162 @cindex Environment variables 163 @end ifclear 164 165 Set the depth of the call stack (default is 256). 166 167 @item @env{GPROFNG_USE_JAVA_OPTIONS} 168 169 @ifclear man 170 @cindex Environment variables 171 @end ifclear 172 173 May be set when profiling a C/C++ application that uses dlopen() to execute 174 Java code. 175 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. 179 180 @c -- deferred @item @env{GPROFNG_SKIP_VALIDATION} 181 @c -- deferred Set this variable to disable checking hardware, system, and 182 @c -- Java versions. 183 184 @item @env{GPROFNG_ALLOW_CORE_DUMP} 185 186 @ifclear man 187 @cindex Environment variables 188 @end ifclear 189 190 Set this variable to allow a core file to be generated; otherwise an error 191 report is created on @samp{/tmp}. 192 193 @item @env{GPROFNG_ARCHIVE} 194 195 @ifclear man 196 @cindex Environment variables 197 @end ifclear 198 199 Use this variable to define the settings for automatic archiving upon 200 experiment recording completion. 201 202 @item @env{GPROFNG_ARCHIVE_COMMON_DIR} 203 204 @ifclear man 205 @cindex Environment variables 206 @end ifclear 207 208 Set this variable to the location of the common archive. 209 210 @item @env{GPROFNG_JAVA_MAX_CALL_STACK_DEPTH} 211 212 @ifclear man 213 @cindex Environment variables 214 @end ifclear 215 216 Set the depth of the Java call stack; the default is 256; set to 0 to disable 217 capturing of call stacks. 218 219 @item @env{GPROFNG_JAVA_NATIVE_MAX_CALL_STACK_DEPTH} 220 221 @ifclear man 222 @cindex Environment variables 223 @end ifclear 224 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). 228 229 @item @env{GPROFNG_SYSCONFDIR} 230 231 @ifclear man 232 @cindex Environment variables 233 @end ifclear 234 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}. 239 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. 244 245 Otherwise, the @command{gprofng display text}, @command{gprofng display src}, 246 and @command{gprofng archive} tools cannot find this file. 247 248 @end table 249 250 @c man end 251 @ManPageEnd{} 252 253 @c ---------------------------------------------------------------------------- 254 @c NOTES section 255 @c ---------------------------------------------------------------------------- 256 257 @ManPageStart{NOTES} 258 @c man begin NOTES 259 260 The gprofng driver supports the following commands. 261 262 @iftex 263 @vspace{1} 264 @end iftex 265 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". 269 270 @i{Collect performance data:} 271 272 @table @code 273 274 @item gprofng collect app 275 Collect application performance data. 276 277 @end table 278 279 @i{Display the performance results:} 280 281 @table @code 282 283 @item gprofng display text 284 Display the performance data in ASCII format. 285 286 @item gprofng display html 287 Generate an HTML file from one or more experiments. 288 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. 292 293 @end table 294 295 @i{Miscellaneous commands:} 296 297 @table @code 298 299 @item gprofng display src 300 Display source or disassembly with compiler annotations. 301 302 @item gprofng archive 303 Include binaries and source code in an experiment directory. 304 305 @end table 306 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. 310 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. 315 316 @c man end 317 @ManPageEnd{} 318 319 @c ---------------------------------------------------------------------------- 320 @c SEEALSO section 321 @c ---------------------------------------------------------------------------- 322 323 @ManPageStart{SEE ALSO} 324 @c man begin SEEALSO 325 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) 332 333 @iftex 334 @vspace{1} 335 @end iftex 336 337 Each gprofng command also supports the @option{--help} option. This lists the 338 options and a short description for each option. 339 340 For example this displays the options supported on the 341 @command{gprofng collect app} command: 342 343 @smallexample 344 $ gprofng collect app --help 345 @end smallexample 346 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. 350 351 @c man end 352 @ManPageEnd{} 353 354 @c ---------------------------------------------------------------------------- 355 @c COPYRIGHT section 356 @c ---------------------------------------------------------------------------- 357 358 @ManPageStart{COPYRIGHT} 359 @c man begin COPYRIGHT 360 361 Copyright @copyright{} 2022-2025 Free Software Foundation, Inc. 362 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''. 369 370 @c man end 371 @ManPageEnd{} 372 373 @c ---------------------------------------------------------------------------- 374 @c If this text is used for a man page, exit. Otherwise we need to continue. 375 @c ---------------------------------------------------------------------------- 376 377 @ifset man 378 @bye 379 @end ifset 380