prof, kprof - display profiling data
prof [ -dr ] [ program ] [ profile ]
kprof kernel kpdata
Prof interprets files produced automatically by programs loaded using the -p option of
2l(1) or other loader. The symbol table in the named program file by default) is read and
correlated with the profile file by default). For each symbol, the percentage of time (in
seconds) spent executing between that symbol and the next is printed (in decreasing
order), together with the time spent there and the number of times that routine was
Under option -d, prof prints the dynamic call graph of the target program, annotating the
calls with the time spent in each routine and those it calls, recursively. The output is
indented two spaces for each call, and is formatted as
where symbol is the entry point of the call, time is in milliseconds, and ncall is the
number of times that entry point was called at that point in the call graph. If ncall is
one, the /ncall is elided. Normally recursive calls are compressed to keep the output
brief; option -r prints the full call graph.
The size of the buffer in program used to hold the profiling data, by default 2000
entries, may be controlled by setting the environment variable profsize before running
program. If the buffer fills, subsequent function calls may not be recorded.
Kprof is similar to prof, but presents the data accumulated by the kernel profiling
device, kprof(3). The symbol table file, that of the operating system kernel, and the
data file, typically /dev/kpdata, must be provided. Kprof has no options and cannot
present dynamic data.