HP Caliper 5.3 User Guide (5900-1558, February 2011)

sigenable 132 1627.70 0.00000 0.00000 0.00000 0.00012
pstat 1 49.32 0.00010 0.00010 0.00010 0.00010
lwp_cond_broadcast 6 73.99 0.00000 0.00001 0.00006 0.00008
ttrace 1 49.32 0.00007 0.00007 0.00007 0.00007
open 6 295.95 0.00001 0.00001 0.00002 0.00007
ioctl 1 49.32 0.00004 0.00004 0.00004 0.00004
shmctl 2 98.65 0.00000 0.00002 0.00004 0.00004
brk 15 184.97 0.00000 0.00000 0.00000 0.00003
mpctl 16 789.19 0.00000 0.00000 0.00000 0.00003
sigaction 22 1085.13 0.00000 0.00000 0.00001 0.00003
close 10 493.24 0.00000 0.00000 0.00001 0.00002
-------------------------------------------------------------------------------
Total 418 317.52 0.00000 0.01721 8.74711 8.86298
--------------------------------------------------------------------------------
Interpreting the Data
For each measurement (run status, I/O, or system calls), one table is collected and printed for each
process which sums the data from all threads in that process. This can cause confusion when
interpreting the results.
For example:
Target Execution Time
Real time: 3.149 seconds
User time: 0.689 seconds
System time: 0.165 seconds
...
System Usage - Run Status
--------------------------------------------------------------------------------
Relative -------- Time (thread secs) -------- ------- Percentage --------
Time Running Eligible Waiting Running Eligible Waiting
--------------------------------------------------------------------------------
Overall 0.0904 0.0124 34.9427 0.26% 0.04% 99.71%
--------------------------------------------------------------------------------
This report output says that the entire program ran in 3.149 seconds, and yet 34.9427 seconds
were spent waiting. This is because a lot of threads are running in this program and the sum of
all of their wait times is 34.9427 seconds.
Attaching to a Running Process to Perform Precise Measurements
You can attach to a running process for precise measurements (which use dynamic instrumentation)
until the process ends. The dependent shared libraries of the program must be mapped as private
before you can attach to the process to add instrumentation.
Enable private mapping of the shared libraries by using the chatr(1) command with the +dbg
enable option on the program file.
You can attach to the process for these measurements:
cgprof
fcount
fcover
To attach to a process, you must specify the process ID (PID). The syntax is:
caliper measurement [options] pid
For example:
$ caliper cgprof 7654
To perform precise measurements of a process:
1. Run chatr(1) with the +dbg enable option on the program you want to measure. For
example:
$ chatr +dbg enable ./myprog
158 HP Caliper Features Specific to HP-UX