oprofile



OPROFILE(1)                                                        OPROFILE(1)




NAME

       oprofile - a system-wide profiler


SYNOPSIS

       opcontrol [ options ]
       opreport [ options ] [ profile specification ]
       opstack [ options ] [ profile specification ]
       opannotate [ options ] [ profile specification ]
       oparchive [ options ] [ profile specification ]
       opgprof [ options ] [ profile specification ]


DESCRIPTION

       OProfile  is a profiling system for systems running Linux 2.2, 2.4, and
       2.6. Profiling runs transparently in the background  and  profile  data
       can  be  collected at any time. OProfile makes use of the hardware per-
       formance counters provided on Intel, AMD,  and  other  processors,  and
       uses a timer-interrupt based mechanism on CPUs without counters.  OPro-
       file can profile the whole system in high detail.
       For a gentle guide to using OProfile, please read the  HTML  documenta-
       tion listed in SEE ALSO.


OPCONTROL

       opcontrol  is  used  for starting and stopping the OProfile daemon, and
       providing set-up parameters.


OPREPORT

       opreport gives image and symbol-based profile summaries for  the  whole
       system or a subset of binary images.


OPSTACK

       opstack  reports  call-graph profile summaries, if call-graph profiling
       is enabled.


OPANNOTATE

       opannotate can produce annotated source or mixed  source  and  assembly
       output.


OPARCHIVE

       oparchive produces oprofile archive for offline analysis


OPGPROF

       opgprof can produce a gprof-format profile for a single binary.



PROFILE SPECIFICATIONS

       All  of the post-profiling tools can take profile specifications, which
       is some combination of the following parameters.


       session:sessionlist
              A comma-separated list of session names to resolve  in.  Absence
              of  this  tag,  unlike  all others, means "the current session",
              equivalent to specifying "session:current".

       session-exclude:sessionlist
              A comma-separated list of sessions to exclude.

       image:imagelist
              A comma-separated list of image names to resolve. Each entry may
              be  relative path, glob-style name, or full path, e.g.  opreport
              ’image:/usr/bin/oprofiled,*op*,./oprofpp’

       image-exclude:imagelist
              Same as image:, but the matching images are excluded.

       lib-image:imagelist
              Same as image:, but only for images that are  for  a  particular
              primary  binary  image (namely, an application). This only makes
              sense to use if you’re using --separate.  This  includes  kernel
              modules and the kernel when using --separate=kernel.

       lib-image-exclude:imagelist
              Same as <option>lib-image:</option>, but the matching images are
              excluded.

       event:eventname
              The symbolic event name to match on, e.g. event:DATA_MEM_REFS.

       count:eventcount
              The  event  count  to   match   on,   e.g.   event:DATA_MEM_REFS
              count:30000.

       unit-mask:maskvalue
              The  unit mask value of the event to match on, e.g. unit-mask:1.

       cpu:cpulist
              Only consider profiles for the given numbered CPU (starting from
              zero).  This is only useful when using CPU profile separation.

       tgid:pidlist
              Only  consider  profiles  for the given task groups. Unless some
              program is using threads, the task group ID of a process is  the
              same  as  its  process  ID. This option corresponds to the POSIX
              notion of a thread group. This is only useful  when  using  per-
              process profile separation.

       tid:tidlist
              Only  consider profiles for the given threads. When using recent
              thread libraries, all threads in a process share the  same  task
              group ID, but have different thread IDs. You can use this option
              in combination with tgid: to restrict the results to  particular
              threads  within  a process.  This is only useful when using per-
              process profile separation.



ENVIRONMENT

       No special environment variables are recognised by oprofile.



FILES

       $HOME/.oprofile/
              Configuration files

       /root/.oprofile/daemonrc
              Configuration file for opcontrol

       $prefix/share/oprofile/
              Event description files used by OProfile.

       /var/lib/oprofile/oprofiled.log
              The user-space daemon logfile.

       /var/lib/oprofile/opdev, /var/lib/oprofile/ophashmapdev, /var/lib/opro-
       file/opnotedev
              The device files for communication with  the  Linux  2.4  kernel
              module.

       /dev/oprofile
              The  device filesystem for communication with the Linux 2.6 ker-
              nel module.

       /var/lib/oprofile/samples/
              The location of the generated sample files.



VERSION

       This man page is current for oprofile-0.8.2.



SEE ALSO

       /usr/share/doc/oprofile/, opcontrol(1), opreport(1), opstack(1),  opan-
       notate(1),  oparchive(1), opgprof(1), gprof(1), readprofile(1), CPUven-
       dorarchitecturemanuals



COPYRIGHT

       oprofile is Copyright (C) 1998-2004 University of Manchester, UK,  John
       Levon,  and  others.  OProfile is released under the GNU General Public
       License, Version 2, or (at your option) any later version.


AUTHORS

       John Levon <levon@movementarian.org> is the  primary  author.  See  the
       documentation for other contributors.



4th Berkeley Distribution      Wed 13 April 2005                   OPROFILE(1)

Man(1) output converted with man2html