JAVA PROFILE 1.0.1, created Tue Feb 12 13:11:02 2008 Header for -agentlib:hprof (or -Xrunhprof) ASCII Output (JDK 5.0 JVMTI based) @(#)jvm.hprof.txt 1.5 06/01/28 Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved. WARNING! This file format is under development, and is subject to change without notice. This file contains the following types of records: THREAD START THREAD END mark the lifetime of Java threads TRACE represents a Java stack trace. Each trace consists of a series of stack frames. Other records refer to TRACEs to identify (1) where object allocations have taken place, (2) the frames in which GC roots were found, and (3) frequently executed methods. HEAP DUMP is a complete snapshot of all live objects in the Java heap. Following distinctions are made: ROOT root set as determined by GC CLS classes OBJ instances ARR arrays SITES is a sorted list of allocation sites. This identifies the most heavily allocated object types, and the TRACE at which those allocations occurred. CPU SAMPLES is a statistical profile of program execution. The VM periodically samples all running threads, and assigns a quantum to active TRACEs in those threads. Entries in this record are TRACEs ranked by the percentage of total quanta they consumed; top-ranked TRACEs are typically hot spots in the program. CPU TIME is a profile of program execution obtained by measuring the time spent in individual methods (excluding the time spent in callees), as well as by counting the number of times each method is called. Entries in this record are TRACEs ranked by the percentage of total CPU time. The "count" field indicates the number of times each TRACE is invoked. MONITOR TIME is a profile of monitor contention obtained by measuring the time spent by a thread waiting to enter a monitor. Entries in this record are TRACEs ranked by the percentage of total monitor contention time and a brief description of the monitor. The "count" field indicates the number of times the monitor was contended at that TRACE. MONITOR DUMP is a complete snapshot of all the monitors and threads in the System. HEAP DUMP, SITES, CPU SAMPLES|TIME and MONITOR DUMP|TIME records are generated at program exit. They can also be obtained during program execution by typing Ctrl-\ (on Solaris) or by typing Ctrl-Break (on Win32). -------- THREAD START (obj=5000013f, id = 200002, name="HPROF gc_finish watcher", group="system") THREAD START (obj=5000013f, id = 200001, name="main", group="main") THREAD START (obj=5000013f, id = 200003, name="WinstoneObjectPoolMgmt", group="main") THREAD START (obj=5000069b, id = 200006, name="hudson initialization thread", group="main") THREAD START (obj=5000071f, id = 200007, name="TCP slave agent listener port=0", group="main") THREAD START (obj=5000013f, id = 200008, name="Thread-1", group="main") THREAD START (obj=50000891, id = 200009, name="Executor #0 for master", group="main") THREAD START (obj=50000891, id = 200010, name="Executor #1 for master", group="main") THREAD START (obj=5000069b, id = 200011, name="Hudson cron thread", group="main") THREAD END (id = 200006) THREAD START (obj=5000013f, id = 200012, name="WinstoneHostConfigurationMgmt:default", group="main") THREAD START (obj=5000013f, id = 200013, name="ConnectorThread:[http-8080]", group="main") THREAD START (obj=5000013f, id = 200014, name="ConnectorThread:[ajp13-8009]", group="main") THREAD END (id = 200001) THREAD START (obj=5000013f, id = 200015, name="DestroyJavaVM", group="main") THREAD START (obj=5000013f, id = 200016, name="LauncherControlThread[ControlPort=-1]", group="main") THREAD START (obj=5000013f, id = 200017, name="RequestHandlerThread[#4]", group="main") THREAD START (obj=5000013f, id = 200018, name="RequestHandlerThread[#3]", group="main") THREAD START (obj=5000013f, id = 200019, name="RequestHandlerThread[#2]", group="main") THREAD START (obj=5000013f, id = 200021, name="SIGINT handler", group="system") THREAD START (obj=5000013f, id = 200022, name="Thread-3", group="main") THREAD START (obj=5000013f, id = 200023, name="Thread-0", group="main") THREAD END (id = 200019) THREAD END (id = 200018) THREAD END (id = 200003) THREAD END (id = 200009) THREAD END (id = 200008) THREAD END (id = 200011) THREAD END (id = 200007) THREAD END (id = 200010) THREAD END (id = 200023) THREAD END (id = 200012) THREAD END (id = 200016) THREAD END (id = 200022) THREAD END (id = 200021) TRACE 365147: java.lang.Object.wait(Object.java:Unknown line) hudson.util.OneShotEvent.block(OneShotEvent.java:Unknown line) hudson.model.Queue.pop(Queue.java:Unknown line) hudson.model.Executor.run(Executor.java:Unknown line) TRACE 362714: java.lang.Object.wait(Object.java:Unknown line) winstone.RequestHandlerThread.run(RequestHandlerThread.java:Unknown line) java.lang.Thread.run(Thread.java:Unknown line) TRACE 364992: winstone.ObjectPool.run(ObjectPool.java:Unknown line) java.lang.Thread.run(Thread.java:Unknown line) TRACE 309314: java.lang.Object.wait(Object.java:Unknown line) java.lang.ref.Reference$ReferenceHandler.run(Reference.java:Unknown line) TRACE 309785: java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:Unknown line) java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:Unknown line) java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:Unknown line) TRACE 365212: java.net.PlainSocketImpl.accept(PlainSocketImpl.java:Unknown line) java.net.ServerSocket.implAccept(ServerSocket.java:Unknown line) java.net.ServerSocket.accept(ServerSocket.java:Unknown line) hudson.TcpSlaveAgentListener.run(TcpSlaveAgentListener.java:Unknown line) TRACE 365191: hudson.model.ViewJob$ReloadThread.getNext(ViewJob.java:Unknown line) hudson.model.ViewJob$ReloadThread.run(ViewJob.java:Unknown line) TRACE 365190: java.util.TimerThread.mainLoop(Timer.java:Unknown line) java.util.TimerThread.run(Timer.java:Unknown line) TRACE 365364: winstone.HostConfiguration.run(HostConfiguration.java:Unknown line) java.lang.Thread.run(Thread.java:Unknown line) TRACE 365390: winstone.Launcher.run(Launcher.java:Unknown line) java.lang.Thread.run(Thread.java:Unknown line) TRACE 350092: java.net.PlainSocketImpl.accept(PlainSocketImpl.java:Unknown line) java.net.ServerSocket.implAccept(ServerSocket.java:Unknown line) java.net.ServerSocket.accept(ServerSocket.java:Unknown line) winstone.ajp13.Ajp13Listener.run(Ajp13Listener.java:Unknown line) TRACE 350083: java.net.PlainSocketImpl.accept(PlainSocketImpl.java:Unknown line) java.net.ServerSocket.implAccept(ServerSocket.java:Unknown line) java.net.ServerSocket.accept(ServerSocket.java:Unknown line) winstone.HttpListener.run(HttpListener.java:Unknown line) TRACE 362800: java.lang.Integer.parseInt(Integer.java:Unknown line) java.lang.Integer.parseInt(Integer.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) TRACE 362796: winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) org.kohsuke.stapler.Stapler.serveStaticResource(Stapler.java:Unknown line) TRACE 307667: java.lang.CharacterDataLatin1.digit(CharacterDataLatin1.java:Unknown line) java.lang.Character.digit(Character.java:Unknown line) java.lang.Character.digit(Character.java:Unknown line) java.lang.Integer.parseInt(Integer.java:Unknown line) TRACE 356863: java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:Unknown line) java.lang.StringBuffer.append(StringBuffer.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) TRACE 307668: java.lang.Character.digit(Character.java:Unknown line) java.lang.Character.digit(Character.java:Unknown line) java.lang.Integer.parseInt(Integer.java:Unknown line) java.lang.Integer.parseInt(Integer.java:Unknown line) TRACE 362799: java.lang.Character.digit(Character.java:Unknown line) java.lang.Integer.parseInt(Integer.java:Unknown line) java.lang.Integer.parseInt(Integer.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) TRACE 356864: java.lang.StringBuffer.append(StringBuffer.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) TRACE 362798: java.lang.String.charAt(String.java:Unknown line) java.lang.Integer.parseInt(Integer.java:Unknown line) java.lang.Integer.parseInt(Integer.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) TRACE 302806: java.lang.CharacterDataLatin1.getProperties(CharacterDataLatin1.java:Unknown line) java.lang.CharacterDataLatin1.digit(CharacterDataLatin1.java:Unknown line) java.lang.Character.digit(Character.java:Unknown line) java.lang.Character.digit(Character.java:Unknown line) TRACE 356865: java.util.Arrays.copyOfRange(Arrays.java:Unknown line) java.lang.String.(String.java:Unknown line) java.lang.StringBuffer.toString(StringBuffer.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) TRACE 356867: java.lang.StringBuffer.toString(StringBuffer.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) TRACE 356869: java.lang.String.startsWith(String.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) TRACE 356858: java.util.ArrayList.get(ArrayList.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) TRACE 356866: java.lang.String.(String.java:Unknown line) java.lang.StringBuffer.toString(StringBuffer.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) TRACE 356860: java.lang.StringBuffer.(StringBuffer.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) TRACE 356862: java.lang.String.getChars(String.java:Unknown line) java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:Unknown line) java.lang.StringBuffer.append(StringBuffer.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) TRACE 356861: java.lang.String.length(String.java:Unknown line) java.lang.AbstractStringBuilder.append(AbstractStringBuilder.java:Unknown line) java.lang.StringBuffer.append(StringBuffer.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) TRACE 304946: sun.security.provider.ByteArrayAccess.b2iBig64(ByteArrayAccess.java:Unknown line) sun.security.provider.SHA.implCompress(SHA.java:Unknown line) sun.security.provider.DigestBase.engineUpdate(DigestBase.java:Unknown line) java.security.MessageDigest$Delegate.engineUpdate(MessageDigest.java:Unknown line) TRACE 361216: winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) java.util.zip.GZIPOutputStream.finish(GZIPOutputStream.java:Unknown line) TRACE 364823: winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) org.kohsuke.stapler.Stapler.serveStaticResource(Stapler.java:Unknown line) org.kohsuke.stapler.ResponseImpl.serveFile(ResponseImpl.java:Unknown line) TRACE 356859: java.lang.AbstractStringBuilder.(AbstractStringBuilder.java:Unknown line) java.lang.StringBuffer.(StringBuffer.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) TRACE 356868: java.lang.String.startsWith(String.java:Unknown line) java.lang.String.startsWith(String.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) TRACE 356856: java.util.ArrayList.size(ArrayList.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) TRACE 300538: java.lang.Math.min(Math.java:Unknown line) java.util.Arrays.copyOfRange(Arrays.java:Unknown line) java.lang.String.(String.java:Unknown line) java.lang.StringBuffer.toString(StringBuffer.java:Unknown line) TRACE 356857: java.util.ArrayList.RangeCheck(ArrayList.java:Unknown line) java.util.ArrayList.get(ArrayList.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) TRACE 304945: java.lang.Integer.reverseBytes(Integer.java:Unknown line) sun.security.provider.ByteArrayAccess.b2iBig64(ByteArrayAccess.java:Unknown line) sun.security.provider.SHA.implCompress(SHA.java:Unknown line) sun.security.provider.DigestBase.engineUpdate(DigestBase.java:Unknown line) TRACE 362801: java.lang.Integer.parseInt(Integer.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) org.kohsuke.stapler.Stapler.serveStaticResource(Stapler.java:Unknown line) TRACE 350379: java.net.SocketInputStream.read(SocketInputStream.java:Unknown line) java.net.SocketInputStream.read(SocketInputStream.java:Unknown line) winstone.WinstoneInputStream.read(WinstoneInputStream.java:Unknown line) javax.servlet.ServletInputStream.readLine(ServletInputStream.java:Unknown line) TRACE 362794: java.lang.String.substring(String.java:Unknown line) java.lang.String.substring(String.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) TRACE 362795: java.lang.String.substring(String.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) TRACE 362797: java.lang.String.length(String.java:Unknown line) java.lang.Integer.parseInt(Integer.java:Unknown line) java.lang.Integer.parseInt(Integer.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) TRACE 364824: java.io.OutputStream.write(OutputStream.java:Unknown line) org.kohsuke.stapler.Stapler.serveStaticResource(Stapler.java:Unknown line) org.kohsuke.stapler.ResponseImpl.serveFile(ResponseImpl.java:Unknown line) hudson.model.DirectoryBrowserSupport.serveFile(DirectoryBrowserSupport.java:Unknown line) TRACE 361308: java.lang.String.(String.java:Unknown line) java.lang.String.substring(String.java:Unknown line) java.lang.String.substring(String.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) TRACE 362802: java.io.ByteArrayOutputStream.write(ByteArrayOutputStream.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) org.kohsuke.stapler.Stapler.serveStaticResource(Stapler.java:Unknown line) TRACE 362793: java.lang.String.length(String.java:Unknown line) winstone.WinstoneResponse.getHeader(WinstoneResponse.java:Unknown line) winstone.WinstoneOutputStream.write(WinstoneOutputStream.java:Unknown line) java.io.OutputStream.write(OutputStream.java:Unknown line) TRACE 304947: sun.security.provider.SHA.implCompress(SHA.java:Unknown line) sun.security.provider.DigestBase.engineUpdate(DigestBase.java:Unknown line) java.security.MessageDigest$Delegate.engineUpdate(MessageDigest.java:Unknown line) java.security.MessageDigest.update(MessageDigest.java:Unknown line) CPU TIME (ms) BEGIN (total = 23894881) Tue Feb 12 13:39:02 2008 rank self accum count trace method 1 13.37% 13.37% 2 365147 java.lang.Object.wait 2 11.95% 25.32% 16 362714 java.lang.Object.wait 3 6.99% 32.30% 1 364992 winstone.ObjectPool.run 4 6.93% 39.23% 50 309314 java.lang.Object.wait 5 6.91% 46.14% 533 309785 java.lang.ref.ReferenceQueue.remove 6 6.70% 52.84% 1 365212 java.net.PlainSocketImpl.accept 7 6.70% 59.54% 1 365191 hudson.model.ViewJob$ReloadThread.getNext 8 6.68% 66.22% 1 365190 java.util.TimerThread.mainLoop 9 6.63% 72.86% 1 365364 winstone.HostConfiguration.run 10 6.63% 79.49% 1 365390 winstone.Launcher.run 11 6.63% 86.12% 317 350092 java.net.PlainSocketImpl.accept 12 6.62% 92.74% 326 350083 java.net.PlainSocketImpl.accept 13 0.73% 93.47% 2285296 362800 java.lang.Integer.parseInt 14 0.67% 94.13% 1141358 362796 winstone.WinstoneResponse.getHeader 15 0.55% 94.68% 20302342 307667 java.lang.CharacterDataLatin1.digit 16 0.55% 95.23% 12862712 356863 java.lang.AbstractStringBuilder.append 17 0.55% 95.78% 20302292 307668 java.lang.Character.digit 18 0.54% 96.32% 20300030 362799 java.lang.Character.digit 19 0.35% 96.67% 12862712 356864 java.lang.StringBuffer.append 20 0.26% 96.92% 22585326 362798 java.lang.String.charAt 21 0.23% 97.15% 20302998 302806 java.lang.CharacterDataLatin1.getProperties 22 0.18% 97.33% 6435267 356865 java.util.Arrays.copyOfRange 23 0.18% 97.51% 6431356 356867 java.lang.StringBuffer.toString 24 0.17% 97.68% 6431356 356869 java.lang.String.startsWith 25 0.17% 97.86% 6431356 356858 java.util.ArrayList.get 26 0.17% 98.03% 6431356 356866 java.lang.String. 27 0.17% 98.20% 6431356 356860 java.lang.StringBuffer. 28 0.15% 98.35% 12870534 356862 java.lang.String.getChars 29 0.15% 98.50% 12870534 356861 java.lang.String.length 30 0.09% 98.59% 319111 304946 sun.security.provider.ByteArrayAccess.b2iBig64 31 0.08% 98.67% 121149 361216 winstone.WinstoneResponse.getHeader 32 0.08% 98.76% 1117223 364823 winstone.WinstoneOutputStream.write 33 0.08% 98.83% 6431356 356859 java.lang.AbstractStringBuilder. 34 0.08% 98.91% 6431356 356868 java.lang.String.startsWith 35 0.07% 98.98% 6561673 356856 java.util.ArrayList.size 36 0.07% 99.06% 6459171 300538 java.lang.Math.min 37 0.07% 99.13% 6431356 356857 java.util.ArrayList.RangeCheck 38 0.07% 99.20% 5106912 304945 java.lang.Integer.reverseBytes 39 0.06% 99.26% 2282580 362801 java.lang.Integer.parseInt 40 0.05% 99.30% 25394 350379 java.net.SocketInputStream.read 41 0.03% 99.34% 1142716 362794 java.lang.String.substring 42 0.03% 99.37% 1142716 362795 java.lang.String.substring 43 0.03% 99.39% 2285296 362797 java.lang.String.length 44 0.02% 99.41% 1091 364824 java.io.OutputStream.write 45 0.01% 99.42% 1143174 361308 java.lang.String. 46 0.01% 99.44% 1141358 362802 java.io.ByteArrayOutputStream.write 47 0.01% 99.45% 1142716 362793 java.lang.String.length 48 0.01% 99.46% 319111 304947 sun.security.provider.SHA.implCompress CPU TIME (ms) END