PROF(1)

NAME
prof - display profile data

SYNOPSIS
prof [ -a ] [ -l ] [ -n ] [ -z ] [ -s ] [ -v [ -low [ -high ] ] ] [ a.out [ mon.out ... ] ]

DESCRIPTION
Prof interprets the file produced by the monitor subroutine. Under default modes, the symbol table in the named object file (a.out default) is read and correlated with the profile file (mon.out default). For each external symbol, the percentage of time spent executing between that symbol and the next is printed (in decreasing order), together with the number of times that routine was called and the number of milliseconds per call. If more than one profile file is specified, the output represents the sum of the profiles.

In order for the number of calls to a routine to be tallied, the -p option of cc, f77 or pc must have been given when the file containing the routine was compiled. This option also arranges for the profile file to be produced automatically.

Options are:

-a  all symbols are reported rather than just external symbols.

-l  the output is sorted by symbol value.

-n  the output is sorted by number of calls

-s  a summary profile file is produced in mon.sum. This is really only useful when more than one profile file is specified.

-v  all printing is suppressed and a graphic version of the profile is produced on the standard output for display by the plot(1) filters. When plotting, the numbers low and high, by default 0 and 100, may be given to cause a selected percentage of the profile to be plotted with accordingly higher resolution.

-z  routines which have zero usage (as indicated by call counts and accumulated time) are nevertheless printed in the output.

FILES
mon.out    for profile
a.out    for namelist
mon.sum    for summary profile

SEE ALSO
monitor(3), profil(2), cc(1), plot(1G)

BUGS
Beware of quantization errors.

Is confused by f77 which puts the entry points at the bottom of subroutines and functions.