mirror of
https://github.com/Stichting-MINIX-Research-Foundation/netbsd.git
synced 2025-09-11 08:07:30 -04:00
76 lines
4.0 KiB
Plaintext
76 lines
4.0 KiB
Plaintext
The following are examples of j_cputime.d.
|
|
|
|
This script traces the on-CPU time of Java methods and prints a report. Here
|
|
it traces the example program, Code/Java/Func_abc
|
|
|
|
# j_cputime.d
|
|
Tracing... Hit Ctrl-C to end.
|
|
^C
|
|
|
|
Top 10 counts,
|
|
PID TYPE NAME COUNT
|
|
311374 method java/lang/String.equals 202
|
|
311374 method java/lang/Math.min 208
|
|
311374 method java/lang/String.hashCode 213
|
|
311374 method java/lang/String.indexOf 302
|
|
311374 method java/lang/System.arraycopy 360
|
|
311374 method java/lang/StringBuilder.append 533
|
|
311374 method java/lang/AbstractStringBuilder.append 549
|
|
311374 method java/lang/Object.<init> 823
|
|
311374 method java/lang/String.charAt 1960
|
|
0 total - 12020
|
|
|
|
Top 10 on-CPU times (us),
|
|
PID TYPE NAME TOTAL
|
|
|
|
Top 10 exclusive method on-CPU times (us),
|
|
PID TYPE NAME TOTAL
|
|
311374 method java/io/FilePermission$1.run 1055
|
|
311374 method java/util/Arrays.copyOf 1110
|
|
311374 method sun/net/www/ParseUtil.decode 1161
|
|
311374 method java/io/File.<clinit> 1212
|
|
311374 method java/lang/StringBuilder.append 1228
|
|
311374 method java/io/UnixFileSystem.normalize 1402
|
|
311374 method java/lang/String.<init> 2251
|
|
311374 method java/lang/String.charAt 2262
|
|
311374 method java/lang/System.initializeSystemClass 2751
|
|
0 total - 99868
|
|
|
|
Top 10 inclusive method on-CPU times (us),
|
|
PID TYPE NAME TOTAL
|
|
311374 method java/lang/ClassLoader.loadClassInternal 25826
|
|
311374 method sun/misc/Launcher$ExtClassLoader.getExtClassLoader 25914
|
|
311374 method java/net/URL.<init> 27677
|
|
311374 method sun/misc/Launcher.<init> 28566
|
|
311374 method sun/misc/Launcher.<clinit> 28744
|
|
311374 method java/lang/ClassLoader.initSystemClassLoader 29241
|
|
311374 method java/lang/ClassLoader.getSystemClassLoader 29249
|
|
311374 method java/lang/System.initializeSystemClass 33814
|
|
311374 method java/lang/ClassLoader.loadClass 66564
|
|
311374 method java/security/AccessController.doPrivileged 67499
|
|
|
|
You can see that it prints the top ten results in each of four categories.
|
|
|
|
The first section reports how many times each subroutine was called, and it's
|
|
type.
|
|
|
|
The second section reports on the on-CPU time of anything that was not of type
|
|
"method", in this case - none.
|
|
|
|
The exclusive method on-CPU times shows, amongst other results, that
|
|
java/lang/String.charAt spent around 2,200 microseconds on-CPU. This times
|
|
excludes time spent in other subroutines.
|
|
|
|
The inclusive method on-CPU times show the times that various methods
|
|
spent on-CPU. This includes the time spent in other subroutines called.
|
|
|
|
These on-CPU times are the time the thread spent running on a CPU, from when
|
|
the subroutine began to when it completed. This does not include time
|
|
spent off-CPU time such as sleeping for I/O or waiting for scheduling.
|
|
|
|
On-CPU times are useful for showing who is causing the CPUs to be busy.
|
|
See Notes/ALLoncpu_notes.txt for more details. Also see
|
|
Notes/ALLexclusive_notes.txt and Notes/ALLinclusive_notes.txt for a
|
|
detailed explanation of exclusive vs inclusive subroutine time.
|
|
|