term% cat index.txt PROF(1) General Commands Manual PROF(1)
NAME
prof, kprof - display profiling data
SYNOPSIS
prof [ -dr ] [ program ] [ profile ]
kprof kernel kpdata
DESCRIPTION
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 de‐
creasing order), together with the time spent there and the number of
times that routine was called.
Under option -d, prof prints the dynamic call graph of the target pro‐
gram, 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
symbol:time/ncall
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. Nor‐
mally 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, subse‐
quent function calls may not be recorded.
Kprof is similar to prof, but presents the data accumulated by the ker‐
nel profiling device, kprof(3). The symbol table file, that of the op‐
erating system kernel, and the data file, typically /dev/kpdata, must
be provided. Kprof has no options and cannot present dynamic data.
SOURCE
/sys/src/cmd/prof.c
/sys/src/cmd/kprof.c
SEE ALSO
2l(1), kprof(3)
PROF(1)