dylibprof man page on OpenDarwin

Man page or keyword search:  
man Server   3202 pages
apropos Keyword Search (all sections)
Output format
OpenDarwin logo
[printable version]

DYLIBPROF(1)							  DYLIBPROF(1)

NAME
       dylibprof - control the shared pc sampling of a dynamic shared library

SYNOPSIS
       dylibprof [-e | -d] | [-c | -r | -b | -h | -p [-o <file>] <dylib>]

DESCRIPTION
       Dylibprof  along	 with  the  server  /usr/libexec/profileServer	allows
       shared program counter sampling of a dynamic shared library across  all
       the programs that use the library.

       To  use	dylibprof(1),  /usr/libexec/profileServer must be running.  So
       first start /usr/libexec/profileServer and leave it running in the back
       ground:
	    % /usr/libexec/profileServer >& /dev/console &

       /usr/libexec/profileServer  starts up with shared pc sampling disabled.
       It should not be left running with shared pc  sampling  enabled	if  no
       sampling	 is  being  done  as  every  launch of a program that uses the
       dynamic linker is effected.  This is true even to  a  small  extent  if
       there no libraries being sampled.

       If  you need to profile from boot up for all processes then the follow‐
       ing line can be added to /etc/bootstrap.conf:
	    server "/usr/libexec/profileServer" services NSProfileServer NSProfileControl;

       Before any dynamic shared library can be sampled sampling must be enabled as
       follows:
	    % dylibprof -e

       It can then later be disabled when no more sampling is to be done with:
	    % dylibprof -d

EXAMPLE
       To sample the dynamic  shared  library  /System/Library/Frameworks/Sys‐
       tem.framework/Versions/B/System	for  example  requires	the  following
       steps.  First create a sample buffer for the library:
	    % dylibprof -c /System/Library/Frameworks/System.framework/Versions/B/System

       Then begin the sampling:
	    % dylibprof -b /System/Library/Frameworks/System.framework/Versions/B/System
       After this programs launched using this library will  be	 part  of  the
       shared  pc  sampling.   Typically what would be done is to then use the
       system normally for a number of hours.

       Then to halt the sampling:
	    % dylibprof -h /System/Library/Frameworks/System.framework/Versions/B/System

       The profiling output file (a gmon.out file) can be created with:
	    % dylibprof -p -o /tmp/gmon.out /System/Library/Frameworks/System.framework/Versions/B/System

       Using the profiling output file and the library a profile listing and a
       time based order file (time.order) can be created with: gprof(1):
	    % gprof -S /System/Library/Frameworks/System.framework/Versions/B/System /tmp/gmon.out

       When no more sampling for this library is to be done the sample buffer can be
       removed with:
	    % dylibprof -r /System/Library/Frameworks/System.framework/Versions/B/System

       The options are:

       -e     Enable shared program counter sampling for dynamic libraries.

       -d     Disable shared program counter sampling for dynamic libraries.

       -c     Create a pc sample buffer for the library.

       -b     Begin  sampling  for  programs  subsequently  launched using the
	      library.

       -h     Halt sampling  for  programs  subsequently  launched  using  the
	      library.

       -p     Produce  a  profiling  output  file  (a  gmon.out	 file) for the
	      library.

       -r     Remove the pc sample buffer for the library.

       -o name
	      Use the file name instead of gmon.out when producing the profil‐
	      ing output file with the -p above.

FILES
       gmon.out			 profile output file
       /var/tmp/profile/profile.XXXXXX the sample buffer file

SEE ALSO
       gprof(1)

Apple Computer, Inc.		March 19, 2002			  DYLIBPROF(1)
[top]

List of man pages available for OpenDarwin

Copyright (c) for man pages and the logo by the respective OS vendor.

For those who want to learn more, the polarhome community provides shell access and support.

[legal] [privacy] [GNU] [policy] [cookies] [netiquette] [sponsors] [FAQ]
Tweet
Polarhome, production since 1999.
Member of Polarhome portal.
Based on Fawad Halim's script.
...................................................................
Vote for polarhome
Free Shell Accounts :: the biggest list on the net