oprofile(1)


NAME

   oprofile  -  a  statistical  profiler  for  Linux  systems,  capable of
   profiling all running code at low overhead; also included is a  set  of
   post-profiling analysis tools, as well as a simple event counting tool

SYNOPSIS

   operf [ options ]
   ocount [ options ]
   opreport [ 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.6.31 and
   greater. OProfile  makes  use  of  the  hardware  performance  counters
   provided  on  Intel, AMD, and other processors.  OProfile can profile a
   selected program or process or the whole system.  OProfile can also  be
   used to collect cumulative event counts at the application, process, or
   system level.
   For  a  gentle  guide  to  using  OProfile,  please   read   the   HTML
   documentation listed in SEE ALSO.

OPERF

   operf is a performance profiler tool for Linux.

OCOUNT

   ocount is an event counting tool for Linux.

OPREPORT

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

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

   Various  optional  profile  specifications  may  be used with the post-
   profiling tools. A profile specification is  some  combination  of  the
   parameters   listed   below.  (  Note:  Enclosing  part  of  a  profile
   specification in curly braces { } can be used for differential profiles
   with opreport, but the braces must be surrounded by whitespace.)

   archive:archive
          Path to the archive to inspect, as generated by oparchive

   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/operf,*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 recognized by OProfile.

FILES

   /usr/share/doc/oprofile/oprofile.html
          OProfile user guide.

   /usr/share/doc/oprofile/opreport.xsd
          Schema file for opreport XML output.

   /usr/share/doc/oprofile/ophelp.xsd
          Schema file for ophelp XML output.

   /usr/share/oprofile/
          Event description files used by OProfile.

   <session-dir>/samples/operf.log
          The profiler log file.

   <session-dir>/samples/current
          The location of the generated sample files.

VERSION

   This man page is current for oprofile-1.1.0.

SEE ALSO

   /usr/share/doc/oprofile/,     operf(1),     ocount(1),     opreport(1),
   opannotate(1),   oparchive(1),   opgprof(1),   gprof(1),   CPU   vendor
   architecture manuals

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.





Opportunity


Personal Opportunity - Free software gives you access to billions of dollars of software at no cost. Use this software for your business, personal use or to develop a profitable skill. Access to source code provides access to a level of capabilities/information that companies protect though copyrights. Open source is a core component of the Internet and it is available to you. Leverage the billions of dollars in resources and capabilities to build a career, establish a business or change the world. The potential is endless for those who understand the opportunity.

Business Opportunity - Goldman Sachs, IBM and countless large corporations are leveraging open source to reduce costs, develop products and increase their bottom lines. Learn what these companies know about open source and how open source can give you the advantage.





Free Software


Free Software provides computer programs and capabilities at no cost but more importantly, it provides the freedom to run, edit, contribute to, and share the software. The importance of free software is a matter of access, not price. Software at no cost is a benefit but ownership rights to the software and source code is far more significant.


Free Office Software - The Libre Office suite provides top desktop productivity tools for free. This includes, a word processor, spreadsheet, presentation engine, drawing and flowcharting, database and math applications. Libre Office is available for Linux or Windows.





Free Books


The Free Books Library is a collection of thousands of the most popular public domain books in an online readable format. The collection includes great classical literature and more recent works where the U.S. copyright has expired. These books are yours to read and use without restrictions.


Source Code - Want to change a program or know how it works? Open Source provides the source code for its programs so that anyone can use, modify or learn how to write those programs themselves. Visit the GNU source code repositories to download the source.





Education


Study at Harvard, Stanford or MIT - Open edX provides free online courses from Harvard, MIT, Columbia, UC Berkeley and other top Universities. Hundreds of courses for almost all major subjects and course levels. Open edx also offers some paid courses and selected certifications.


Linux Manual Pages - A man or manual page is a form of software documentation found on Linux/Unix operating systems. Topics covered include computer programs (including library and system calls), formal standards and conventions, and even abstract concepts.