9.6.100;dpat (domain_performance_analysis_tool), revision 9.6, 87/05/08
DPAT (DOMAIN_PERFOMANCE_ANALYSIS_TOOL) -- Analyze program performance.
usage:
dpat [ [ -view {process_spec | -n[ext]} |
-mon[itor] {process_spec | -n[ext]}
[-NO_DF | -NO_DATAFILE]
[-STOP_QUIT]
[-STOP_TARGET[_STOP]]
[-STOP_BREAK[POINT]]
[-SKIP_WAIT[_STATES]]
[-BAR[CHARTS]]
[-TRACE[BACKS]]
[-MS[_PERIOD] n]
[-DISPLAY_MULTIPLE n | -DM n]
[-CURRENT[_PROCEDURES_ONLY]]
[-NO_SYS[TEM_CALLS]]
[-ALL_SYS[TEM_CALLS]]
[-USER_SYS[TEM_CALLS]]
[-DF pathname | -DATAFILE pathname]
]
[-ana[lyze]
[-CS | -CASE[SENSITIVE]]
[-ANC[ESTORS]]
[-HIER[ARCHICAL]]
[-NH | -NO_HEAD[ER]]
[-CUTOFF_PER[CENT] n]
[-CUTOFF_LEV[EL] n]
[-AF[TER] {call chain filter | traceback number}]
[-UNT[IL] {call chain filter | traceback number}]
[-MAT[CHING] call chain filter]
[-GRO[UP] "group spec"]
[-NO_SYS[TEM_CALLS]]
[-ALL_SYS[TEM_CALLS]]
[-USER_SYS[TEM_CALLS]]
[-DF pathname | -DATAFILE pathname]
]
]
FORMAT
DPAT [options]
DPAT (DOMAIN Performance Analysis Tool), part of DPAK (DOMAIN Performance
Analysis Kit), is an interactive tool that looks at the performance of
programs, including I/O, paging, and system calls, at the procedure level.
DPAT periodically samples a program's call/return stack while the program is
executing. These samples allow DPAT to estimate the relative amount of time
each procedure is "active," that is, the relative amount of time spent either
in the procedure itself or in the procedures it calls directly or indirectly.
Therefore, DPAT can identify procedures that consume a relatively large amount
of time, irrespective of whether those procedures consume time directly, or
instead, tend to invoke other time-consuming procedures or system services.
This distinguishes DPAT from another important DPAK tool, HPC, which looks at
the relative amount of CPU time a procedure directly consumes. DPAT can
highlight procedures that consume a great deal of time directly (e.g. by using
a lot of CPU time) or indirectly (e.g. by invoking other time-consuming
procedures or expensive system services, such as I/O services). Thus, DPAT
focuses on the amount of elapsed time a procedure is active, i.e. the amount
of elapsed time spent "in or under" that procedure, whereas HPC focuses on the
amount of CPU time consumed while control (the program counter) is in a
procedure.
For programs that do a lot of I/O or for other reasons spend the majority of
their time in global libraries or the operating system, HPC may not be helpful
in analyzing performance, since in this case, the program itself may consume
very little CPU time. Analyzing such programs is DPAT's strength.
In addition to allowing DPAT to estimate the relative amount of time each
procedure was active, the call/return stack samples it takes also allow DPAT
to break down the amount of time a procedure was active into the amount of
time consumed by the procedures it calls, the procedures they call, etc.,
thereby producing a hierarchical breakdown of where the program spent time
that mirrors the program's dynamic call tree structure.
Like other DPAK tools, DPAT does not require that the program being analyzed
have been compiled with any special options.
TWO INTERFACES
The DPAT interface is Dialogue-based. To get a feeling for the commands and
options DPAT provides, invoke it without options and then ask for help. You
can get help for a particular command or option by pointing at it and then
pressing the HELP key (or the middle mouse key). If you don't have a mouse,
^H will provide help. You can also get overall help by selecting the HELP
icon. For more information on the DPAT interface, refer to the Analyzing
Program Performance with DPAK manual.
The DPAT Command line interface enables you to use DPAT in a command file or a
Shell command pipeline, or to run DPAT remotely via the CRP command. The
command line options are explained below.
OPTIONS
If no options are specified, DPAT invokes its interactive, Dialogue-based
interface.
Default options are indicated by "(D)."
MONITOR MODE
-MON[ITOR] {process_spec | -n[ext]}
Invoke the Monitor function. You must specify the process
where the program is to be monitored. If you chose
"process_spec", specify a process name, a process uid, or a
UNIX pid. If you choose "-n[ext]", DPAT monitors the next
process created.
-V[IEW] {process_spec | -n[ext]}
Same as -MONITOR option except it implies no datafile, and
no barcharts, just dynamic tracebacks. Samples at a rate
of 1000 milliseconds.
The following options may be used only with the -MONITOR option.
-NO_DATAFILE
-NO_DF Save no data during a monitoring session.
-STOP_QUIT Stop monitoring the process when you type a CTRL/Q in the
DPAT window. With this option, you can monitor several
programs consecutively or monitor successive runs of the
same program.
-STOP_TARGET[_STOP]
(D) Stop monitoring when the program returns to the point at
which DPAT began to monitor it.
-STOP_BREAK[POINT]
Stop monitoring a section of a program when the program
reaches a debugger breakpoint or when the program finishes.
-SKIP_WAIT[_STATES]
Ignore wait states in interactive programs that wait for
user input. This inhibits DPAT from taking samples while
the program is in a wait state.
-BAR[CHARTS] Display graphically the most active procedures in the
current session and their associated page faults.
-TRACE[BACKS]
Display the active procedures included in the current
sample of the target program.
-MS[_PERIOD] n
Specify the sampling rate to be one sample every 'n'
milliseconds. The minimum interval is 10. The default
interval is 50 milliseconds if this option is omitted.
-DISPLAY_MULTIPLE n
-DM n Specify that the dynamic traceback and bar chart displays
be refreshed after every 'n' samples. DPAT updates the
display after every sample (i.e., n=1) if this option is
omitted.
-CURRENT[_PROCEDURES_ONLY]
Limit the bar chart display to include only recently
sampled procedures.
ANALYZER MODE
-ANA[LYZE] Invoke the Analyzer function.
The following options may be used only with the -ANALYZE option.
-CASE[SENSITIVE]
-CS Treat uppercase and lowercase letters as different when
matching call chain filters against tracebacks in the
datafile.
-ANC[ESTORS] Include the ancestors of the procedure(s) that satisfy the
filter. This option is useful when you want to see which
procedures call a filtered procedure.
-HIER[ARCHICAL]
Produce a hierarchical summary report, which reflects the
dynamic calling structure of the program. It divides up
the overall time a certain procedure is active among all
the procedures that call that procedure.
-NO_HEAD[ER]
-NH Suppress the header information in a summary report. The
header tells you when the file was created, the username of
the person who created the datafile, and the total number
of samples taken.
-CUTOFF_PER[CENT] n
Include information in the summary report for every
procedure that consumes more than the specified percentage
of execution time ('n'). For example, if you specify 5,
the summary report includes only procedures using more than
5% of the execution time. The default percentage is 1 if
this option is omitted.
-CUTOFF_LEV[EL] n
Display procedures in a hierarchical report up to the
specified number of levels ('n') in the call tree. The
default is 64 levels deep if this option is omitted.
-AF[TER] {call chain filter | traceback number}
Use only the samples in the datafile that occur after (and
including) the first traceback that satisfies the call
chain filter. If you specify a traceback number instead,
this option includes only samples whose numbers are equal
to or greater than the specified number.
-UNT[IL] {call chain filter | traceback number}
Use only the datafile samples occurring before the first
traceback that satisfies the call chain filter. If you
specify a traceback number instead, this option includes
samples whose numbers are less than the specified number.
-MAT[CHING] call chain filter
Use only samples whose tracebacks match the filter. If you
do not use this option, DPAT includes all samples.
-GRO[UP] "group spec"
Condense the information presented in a summary report.
You may have to enclose the "group spec" within quote
delimiters. For example, -GROUP "ios_$?* IOS". Also, you
can have up to three -GROUP options on the same command
line.
MONITOR AND ANALYZER MODE
The following options may be used with either the -MONITOR or the -ANALYZE
option.
-NO_SYS[TEM_CALLS]
Exclude all system procedures from summary reports and
tracebacks.
-ALL_SYS[TEM_CALLS]
Include all system procedures in the summary reports and
tracebacks.
-USER_SYS[TEM_CALLS]
(D) Include only visible system procedures, that is, system
calls that are known globals.
-DATAFILE pathname
-DF pathname Save data from a monitoring session in the specified
datafile. In an analyze session, reads the specified
datafile.
EXAMPLES
The following examples illustrate how to use DPAT command line options:
$ dpat -monitor process_17 -datafile my_data Monitor process_17 and save
data in the file 'my_data'.
$ dpat -view process_19 View process_19.
RELATED TOPICS
More information is available. Type:
- HELP HPC
for details about the histogram program counter.
- HELP DSPST
for details about displaying process status data.