unixdev.net


Switch to SpeakEasy.net DSL

The Modular Manual Browser

Home Page
Manual: (plan9)
Page:
Section:
Apropos / Subsearch:
optional field

PROF(1)                                                                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
       decreasing 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
       operating 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)