Home | History | Annotate | Line # | Download | only in Examples
      1 The following are examples of j_calltime.d.
      2 
      3 This script traces the elapsed time of Java methods and prints a report of the
      4 top ten in each category.   This number is configurable with simple edit of
      5 the DTrace script
      6 
      7 Here it traces the example program, Code/Java/Func_abc
      8 
      9 # j_calltime.d
     10 Tracing... Hit Ctrl-C to end.
     11 ^C
     12 
     13 Top 10 counts,
     14       PID TYPE       NAME                                                COUNT
     15    311358 method     java/lang/String.equals                               202
     16    311358 method     java/lang/Math.min                                    208
     17    311358 method     java/lang/String.hashCode                             213
     18    311358 method     java/lang/String.indexOf                              302
     19    311358 method     java/lang/System.arraycopy                            360
     20    311358 method     java/lang/StringBuilder.append                        533
     21    311358 method     java/lang/AbstractStringBuilder.append                549
     22    311358 method     java/lang/Object.<init>                               823
     23    311358 method     java/lang/String.charAt                              1960
     24         0 total      -                                                   12020
     25 
     26 Top 10 elapsed times (us),
     27       PID TYPE       NAME                                                TOTAL
     28 
     29 Top 10 exclusive method elapsed times (us),
     30       PID TYPE       NAME                                                TOTAL
     31    311358 method     java/nio/ByteBuffer.<init>                           5430
     32    311358 method     java/lang/String.charAt                              6079
     33    311358 method     java/lang/String.<init>                              7306
     34    311358 method     java/lang/StringBuilder.append                      10240
     35    311358 method     java/util/StringTokenizer.scanToken                 11075
     36    311358 method     java/net/URL.<clinit>                               12519
     37    311358 method     java/io/UnixFileSystem.normalize                    13218
     38    311358 method     sun/net/www/ParseUtil.decode                        14208
     39    311358 method     java/lang/Thread.sleep                            3016374
     40         0 total      -                                                 3344993
     41 
     42 Top 10 inclusive method elapsed times (us),
     43       PID TYPE       NAME                                                TOTAL
     44    311358 method     sun/misc/Launcher.<clinit>                         129120
     45    311358 method     java/lang/ClassLoader.initSystemClassLoader        129851
     46    311358 method     java/lang/ClassLoader.getSystemClassLoader         129897
     47    311358 method     java/lang/ClassLoader.loadClass                    267404
     48    311358 method     java/security/AccessController.doPrivileged        278364
     49    311358 method     Func_abc.func_c                                   1009971
     50    311358 method     Func_abc.func_b                                   2019995
     51    311358 method     java/lang/Thread.sleep                            3016374
     52    311358 method     Func_abc.func_a                                   3027043
     53    311358 method     Func_abc.main                                     3027068
     54 
     55 Counts shows us how many times each different method was called, and how
     56 many methods were called in total.
     57 
     58 The exclusive method elapsed times show the time that each method spent
     59 processing code - while not in other method.
     60 
     61 The inclusive method elapsed times show the time that each method spent
     62 processing code, including the time spent in other calls.
     63 
     64 These elapsed times are the absolute time from when the method began to
     65 when it completed - which includes off-CPU time due to other system events
     66 such as I/O, scheduling, interrupts, etc.
     67 
     68