Reports generated with the -P flag

The report generated with the -P flag includes the data shown in the default report and also includes a detailed report on pthread status.

The report includes the following:
  • The amount of time the pthread was in application and system call mode
  • The application time details
  • The system calls and pthread calls that the pthread made
  • The system calls and pthread calls that were pending at the end of the trace
  • The processor affinity
  • The number of times the pthread was dispatched
  • To which CPU(s) the thread was dispatched
  • The thread affinity
  • The number of times that the pthread was dispatched
  • To which kernel thread(s) the pthread was dispatched
The report also includes dispatch wait time and details of interrupts.
The following is an example of a report generated with the -P flag:
Report for Pthread Id: 1 (hex 1) Pid: 245962 (hex 3c0ca)
Process Name: ./pth32
---------------------
 Total Application Time     (ms):  3.919091
 Total System Call Time     (ms):  8.303156
 Total Hypervisor Call Time (ms):  0.000000

 Application time details:
     Total Pthread Call Time (ms):  1.139372
     Total Pthread Dispatch Time (ms):  0.115822
     Total Pthread Idle Dispatch Time (ms):  0.036630
     Total Other Time (ms):  2.627266


                            Pthread System Calls Summary
                            ---------------------------

   Count   Total Time  Avg Time  Min Time  Max Time     SVC (Address)
               (msec)    (msec)    (msec)    (msec)
========  ===========  ========  ========  ========  ================
       1       3.3898    3.3898    3.3898    3.3898  _exit(409e50)
      61       0.8138    0.0133    0.0089    0.0254  kread(5ffd78)
      11       0.4616    0.0420    0.0262    0.0835  thread_create(407360)
      22       0.2570    0.0117    0.0062    0.0373  mprotect(6d5bd8)
      12       0.2126    0.0177    0.0100    0.0324  thread_setstate(40a660)
     115       0.1875    0.0016    0.0012    0.0037  klseek(5ffe38)
      12       0.1061    0.0088    0.0032    0.0134  sbrk(6d4f90)
      23       0.0803    0.0035    0.0018    0.0072  trcgent(4078d8)

...(lines omitted)...

                     Pending System Calls Summary
                     ----------------------------
Accumulated   SVC (Address)
Time (msec)
============  ==========================
      0.0141  thread_tsleep(40a4f8)


                     Pthread Calls Summary
                     ---------------------

   Count   Total Time   % sys  Avg Time  Min Time  Max Time  Pthread Routine
               (msec)    time    (msec)    (msec)    (msec)
========  ===========  ======  ========  ========  ========  ================
      11       0.9545   0.01%    0.0868    0.0457    0.1833  pthread_create
       8       0.0725   0.00%    0.0091    0.0064    0.0205  pthread_join
       1       0.0553   0.00%    0.0553    0.0553    0.0553  pthread_detach
       1       0.0341   0.00%    0.0341    0.0341    0.0341  pthread_cancel
       1       0.0229   0.00%    0.0229    0.0229    0.0229  pthread_kill

                     Pending Pthread Calls Summary
                     -----------------------------
Accumulated   Pthread Routine
Time (msec)
============  ===============
     0.0025   pthread_join


 processor affinity:  0.600000

Processor Dispatch Histogram for pthread (CPUid : times_dispatched):
    CPU 0 : 4
    CPU 1 : 1

 total number of dispatches  :  5
 avg. dispatch wait time (ms):  798.449725

 Thread affinity:  0.333333

Thread Dispatch Histogram for pthread (thread id :  number dispatches):
    Thread id 688279 : 1
    Thread id 856237 : 1
    Thread id 1007759 : 1

 total number of pthread dispatches:  3
 avg. dispatch wait time (ms):  1330.749542

      Data on Interrupts that Occurred while Phread was Running
           Type of Interrupt       Count
   =============================== ============================
    Data Access Page Faults (DSI): 452
   Instr. Fetch Page Faults (ISI): 0
          Align. Error Interrupts: 0
         IO (external) Interrupts: 0
         Program Check Interrupts: 0
        FP Unavailable Interrupts: 0
          FP Imprecise Interrupts: 0
               RunMode Interrupts: 0
           Decrementer Interrupts: 2
   Queued (Soft level) Interrupts: 0
The information in the pthreads summary report includes the following:
Item Descriptor
Pthread ID The Pthread ID of the thread.
Process ID The Process ID that the pthread belongs to.
Process Name The process name, if known, that the pthread belongs to.
Total Application Time (ms) The amount of time, expressed in milliseconds, that the pthread spent in application mode.
Total System Call Time (ms) The amount of time, expressed in milliseconds, that the pthread spent in system call mode.
The information in the application time details report includes the following:
Item Descriptor
Total Pthread Call Time The amount of time, expressed in milliseconds, that the pthread spent in traced pthread library calls.
Total Pthread Dispatch Time The amount of time, expressed in milliseconds, that the pthread spent in libpthreads dispatch code.
Total Pthread Idle Dispatch Time The amount of time, expressed in milliseconds, that the pthread spent in libpthreads vp_sleep code.
Total Other Time The amount of time, expressed in milliseconds, that the pthread spent in non-traced user mode code.
Total number of pthread dispatches The total number of times a pthread belonging to the process was dispatched by the libpthreads dispatcher.
Total number of pthread idle dispatches The total number of times a thread belonging to the process was in the libpthreads vp_sleep code.
The summary information in the report includes the following:
Item Descriptor
Pthread System Calls Summary A system call summary for the pthread; this has the same fields as the global System Call Summary. It also includes elapsed time information if the -e flag is specified and error information if the -s flag is specified.
Pending System Calls Summary If the pthread was executing a system call at the end of the trace, a pending system call summary will be printed. This has the Accumulated Time and Supervisor Call (SVC Address) fields. It also includes elapsed time information if the -e flag is specified.
Pthread Hypervisor Calls Summary A summary of the hypervisor calls for the pthread. This has the same fields as the global hypervisor calls summary. It also includes elapsed time information if the -e flag is specified.
Pending Hypervisor Calls Summary If the pthread was executing a hypervisor call at the end of the trace, a pending hypervisor calls summary will be printed. This has the Accumulated Time and Hypervisor Call fields. It also includes elapsed time information if the -e flag is specified.
Pthread Calls Summary A summary of the pthread library calls for the pthread. This has the same fields as the global pthread Calls Summary. It also includes elapsed time information if the -e flag is specified.
Pending Pthread Calls Summary If the pthread was executing a pthread library call at the end of the trace, a pending pthread call summary will be printed. This has the Accumulated Time and Pthread Routine fields. It also includes elapsed time information if the -e flag is specified.
The pthreads summary report also includes the following information:
Item Descriptor
processor affinity Probability that for any dispatch of the pthread, the pthread was dispatched to the same processor on which it last executed.
Processor Dispatch Histogram for pthread The number of times that the pthread was dispatched to each CPU in the system.
avg. dispatch wait time The average elapsed time for the pthread from being undispatched and its next dispatch.
Thread affinity The probability that for any dispatch of the pthread, the pthread was dispatched to the same kernel thread on which it last executed
Thread Dispatch Histogram for pthread The number of times that the pthread was dispatched to each kernel thread in the process.
total number of pthread dispatches The total number of times the pthread was dispatched by the libpthreads dispatcher.
Data on Interrupts that occurred while Pthread was Running The number of times each type of FLIH occurred while the pthread was executing.