oprofile

TriggerTek Logo
abcdefghijklmnopqrstuvwxyz_
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.
       OProfile 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 separa-
	      tion.

       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/oprofile/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.1.


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    Sat 17 November 2007		  OPROFILE(1)