gprof.info: Subroutines

Go forward to Cycles
Go backward to Callers
Go up to Call Graph
Go to the top op gprof

Lines for a Function's Subroutines

   A function's entry has a line for each of its subroutines--in other
words, a line for each other function that it called.  These lines'
fields correspond to the fields of the primary line, but their meanings
are different because of the difference in context.
   For reference, we repeat two lines from the entry for the function
`main', the primary line and a line for a subroutine, together with the
heading line that shows the names of the fields:
     index  % time    self  children called     name
     ...
     [2]    100.0    0.00    0.05       1         main [2]
                     0.00    0.05       1/1           report [3]
   Here are the meanings of the fields in the subroutine-line for `main'
calling `report':
`self'
     An estimate of the amount of time spent directly within `report'
     when `report' was called from `main'.
`children'
     An estimate of the amount of time spent in subroutines of `report'
     when `report' was called from `main'.
     The sum of the `self' and `children' fields is an estimate of the
     total time spent in calls to `report' from `main'.
`called'
     Two numbers, the number of calls to `report' from `main' followed
     by the total number of non-recursive calls to `report'.  This
     ratio is used to determine how much of `report''s `self' and
     `children' time gets credited to `main'.  *Note Assumptions::.
`name'
     The name of the subroutine of `main' to which this line applies,
     followed by the subroutine's index number.
     If the caller is part of a recursion cycle, the cycle number is
     printed between the name and the index number.