gprof man page on Ultrix

Man page or keyword search:  
man Server   3690 pages
apropos Keyword Search (all sections)
Output format
Ultrix logo
[printable version]

gprof(1)			  Unsupported			      gprof(1)

Name
       gprof - display call graph profile data

Syntax
       gprof [options] [a.out[gmon.out...]]

Description
       The  command  produces  an execution profile of C, Pascal, or Fortran77
       programs.  The effect of called routines is incorporated in the profile
       of  each caller.	 The profile data is taken from the call graph profile
       file (gmon.out default) which is created by programs which are compiled
       with  the  -pg  option of and That option also links in versions of the
       library routines which are compiled for profiling.  The symbol table in
       the  named  object file (a.out default) is read and correlated with the
       call graph profile file.	 If more than one profile file	is  specified,
       the  output  shows the sum of the profile information in the given pro‐
       file files.

       First, a flat profile is given, similar to that provided by This	 list‐
       ing  gives  the	total  execution times and call counts for each of the
       functions in the program, sorted by decreasing time.

       Next, these times are propagated along the edges	 of  the  call	graph.
       Cycles  are  discovered,	 and  calls into a cycle are made to share the
       time of the cycle.  A second listing shows the functions sorted accord‐
       ing  to	the time they represent including the time of their call graph
       descendents.  Below each function entry	is  shown  its	(direct)  call
       graph children, and how their times are propagated to this function.  A
       similar display above the function shows how this function's  time  and
       the  time  of  its descendents is propagated to its (direct) call graph
       parents.

       Cycles are also shown, with an entry for the cycle as  a	 whole	and  a
       listing of the members of the cycle and their contributions to the time
       and call counts of the cycle.

Options
       The following options are available:

       -a		   Suppresses  the  printing  of  statically  declared
			   functions.	If  this option is given, all relevant
			   information about the static function (for example,
			   time	 samples, calls to other functions, calls from
			   other functions) belongs  to	 the  function	loaded
			   just before the static function in the file.

       -b		   Suppresses  the  printing  of a description of each
			   field in the profile.

       -c		   The static call graph of the program is  discovered
			   by a heuristic which examines the text space of the
			   object file.	 Static-only parents or	 children  are
			   indicated with call counts of 0.

       -E name		   Suppresses  the printing of the graph profile entry
			   for routine	name  (and  its	 descendants)  as  -e,
			   above,  and	also  excludes	the time spent in name
			   (and its descendants) from the total and percentage
			   time	 computations.	 (For  example,	 -E  mcount -E
			   mcleanup is the default.)

       -e name		   Suppresses the printing of the graph profile	 entry
			   for	routine name and all its descendants More than
			   one -e option may be given.	Only one name  may  be
			   given with each -e option.

       -F name		   Prints  the graph profile entry of only the routine
			   name and its descendants (as -f,  above)  and  also
			   uses	 only  the  times  of  the printed routines in
			   total time and percentage computations.  More  than
			   one	-F  option may be given.  Only one name may be
			   given with each -F option.  The -F option overrides
			   the -E option.

       -f name		   Prints  the	graph profile entry of only the speci‐
			   fied routine name and its descendants.   More  than
			   one	-f  option may be given.  Only one name may be
			   given with each -f option.

       -s		   Produces a profile file gmon.sum is produced	 which
			   represents  the  sum	 of the profile information in
			   all the specified profile files.  This summary pro‐
			   file	 file may be given to subsequent executions of
			   gprof (probably also with a -s) to accumulate  pro‐
			   file data across several runs of an a.out file.

       -z		   Displays  routines  which have zero usage (as indi‐
			   cated by call counts and accumulated	 time).	  This
			   is  useful  in  conjunction	with the -c option for
			   discovering which routines were never called.

Restrictions
       Beware of quantization errors.  The  granularity	 of  the  sampling  is
       shown,  but  remains  statistical at best.  We assume that the time for
       each execution of a function can be expressed by the total time for the
       function	 divided  by the number of times the function is called.  Thus
       the time propagated along the call graph arcs to parents of that	 func‐
       tion  is	 directly proportional to the number of times that arc is tra‐
       versed.

       Parents which are not themselves profiled have the time of  their  pro‐
       filed  children propagated to them, but they appear to be spontaneously
       invoked in the call graph listing, and do not have  their  time	propa‐
       gated  further.	 Similarly,  signal  catchers,	even  though profiled,
       appear to be spontaneous (although for more obscure reasons).  Any pro‐
       filed  children	of  signal catchers should have their times propagated
       properly, unless the signal catcher was invoked during the execution of
       the profiling routine, in which case all is lost.

       The  profiled  program  must  call or return normally for the profiling
       information to be saved in the file.

Files
       the name list and text space.

       dynamic call graph and profile.

       summarized dynamic call graph and profile.

See Also
       cc(1), prof(1), profil(2), monitor(3)

				      VAX			      gprof(1)
[top]

List of man pages available for Ultrix

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
....................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net