ADC Home > Reference Library > Reference > Mac OS X > Mac OS X Man Pages
|
This document is a Mac OS X manual page. Manual pages are a command-line technology for providing documentation. You can view these manual pages locally using the man(1) command. These manual pages come from many different sources, and thus, have a variety of writing styles. This manual page is associated with the Mac OS X developer tools. The software or headers described may not be present on your Mac OS X installation until you install the developer tools package. This package is available on your Mac OS X installation DVD, and the latest versions can be downloaded from developer.apple.com. For more information about the manual page format, see the manual page for manpages(5). |
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/pro-fileServer /usr/libexec/profileServer fileServer 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 sam-pled. sampled. pled. If you need to profile from boot up for all processes then the following 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/System.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 profiling 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) |
|