This Bugzilla instance is a read-only archive of historic NetBeans bug reports. To report a bug in NetBeans please follow the project's instructions for reporting issues.

Bug 57271 - The start of profiled application should be faster
Summary: The start of profiled application should be faster
Status: CLOSED WONTFIX
Alias: None
Product: profiler
Classification: Unclassified
Component: Base (show other bugs)
Version: 4.x
Hardware: All All
: P3 blocker (vote)
Assignee: iformanek
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2005-03-31 16:03 UTC by iformanek
Modified: 2007-02-12 22:07 UTC (History)
0 users

See Also:
Issue Type: DEFECT
Exception Reporter:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description iformanek 2005-03-31 16:03:07 UTC
Sometimes it can take up to 20 seconds between the "Run" button is pressed on 
the Select Task Panel, and the profiled application begins its execution. We 
should take a look if this can be speeded up.
Comment 1 iformanek 2005-03-31 16:03:29 UTC
... and do it for 1.0
Comment 2 iformanek 2005-04-14 15:17:07 UTC
Self assign for further investigation
Comment 3 iformanek 2005-05-16 16:44:42 UTC
Stack trace of app while waiting for profiled app to come up:

"Thread-7" daemon prio=2 tid=0x03968008 nid=0xfec waiting on condition 
[0x0835f000..0x0835fb68]
        at java.lang.Thread.sleep(Native Method)
        at com.sun.tools.profiler.ProfilerClient$2.run(ProfilerClient.java:1005)

"Profiler Request Processor" daemon prio=2 tid=0x03b16e50 nid=0xf3c in 
Object.wait() [0x0831f000..0x0831fbe8]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x10300318> (a java.awt.EventQueue$1AWTInvocationLock)
        at java.lang.Object.wait(Object.java:474)
        at java.awt.EventQueue.invokeAndWait(EventQueue.java:846)
        - locked <0x10300318> (a java.awt.EventQueue$1AWTInvocationLock)
        at javax.swing.SwingUtilities.invokeAndWait(SwingUtilities.java:1257)
        at 
org.netbeans.modules.profiler.utils.IDEUtils.runInEventDispatchThreadAndWait
(IDEUtils.java:104)
        at org.netbeans.modules.profiler.NetBeansProfiler$ProgressPanel.display
(NetBeansProfiler.java:1014)
        at com.sun.tools.profiler.ProfilerClient.connectToServer
(ProfilerClient.java:1030)
        at com.sun.tools.profiler.ProfilerClient.establishConnectionWithServer
(ProfilerClient.java:88)
        at com.sun.tools.profiler.TargetAppRunner.connectToStartedVMAndStartTA
(TargetAppRunner.java:493)
        at com.sun.tools.profiler.TargetAppRunner.connectToStartedVMAndStartTA
(TargetAppRunner.java:129)
        at com.sun.tools.profiler.TargetAppRunner.connectToStartedVMAndStartTA
(TargetAppRunner.java:124)
        at org.netbeans.modules.profiler.NetBeansProfiler$2.run
(NetBeansProfiler.java:341)
        at org.openide.util.Task.run(Task.java:189)
        at org.openide.util.RequestProcessor$Task.run(RequestProcessor.java:330)
        at org.openide.util.RequestProcessor$Processor.run
(RequestProcessor.java:721)

"Inactive RequestProcessor thread 
[Was:TimedWeakReference/org.netbeans.modules.projectapi.TimedWeakReference]" 
daemon prio=2 tid=0x03be7e48 nid=0xab4 in Object.wait() [0x0421f000..0x0421f9e8]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1202b6c0> (a java.lang.Object)
        at org.openide.util.RequestProcessor$Processor.run
(RequestProcessor.java:692)
        - locked <0x1202b6c0> (a java.lang.Object)

"Inactive RequestProcessor thread [Was:Refresh-After-
WindowActivated/org.netbeans.core.ui.MenuWarmUpTask$NbWindowsAdapter]" daemon 
prio=2 tid=0x039ece30 nid=0xa30 in Object.wait() [0x041df000..0x041dfa68]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1200ecb0> (a java.lang.Object)
        at org.openide.util.RequestProcessor$Processor.run
(RequestProcessor.java:692)
        - locked <0x1200ecb0> (a java.lang.Object)

"Inactive RequestProcessor thread [Was:Default 
RequestProcessor/org.apache.tools.ant.module.run.TargetExecutor$WrapperExecutorT
ask]" daemon prio=2 tid=0x03ab2fd8 nid=0xbf4 in Object.wait() 
[0x0374f000..0x0374fbe8]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x11fda888> (a java.lang.Object)
        at org.openide.util.RequestProcessor$Processor.run
(RequestProcessor.java:692)
        - locked <0x11fda888> (a java.lang.Object)

"*** JFluid SeparateCmdExecutionThread ***" daemon prio=7 tid=0x0325f780 
nid=0xcf4 in Object.wait() [0x02f4f000..0x02f4fa68]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x11de1840> (a java.lang.Object)
        at java.lang.Object.wait(Object.java:474)
        at com.sun.tools.profiler.ProfilerClient$SeparateCmdExecutionThread.run
(ProfilerClient.java:1275)
        - locked <0x11de1840> (a java.lang.Object)

"MDR event dispatcher" daemon prio=2 tid=0x03309a98 nid=0x7e4 in Object.wait() 
[0x082df000..0x082dfa68]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x11201ee0> (a java.util.LinkedList)
        at java.lang.Object.wait(Object.java:474)
        at org.netbeans.mdr.util.EventNotifier$EventsDelivery.run
(EventNotifier.java:257)
        - locked <0x11201ee0> (a java.util.LinkedList)
        at java.lang.Thread.run(Thread.java:595)

"DestroyJavaVM" prio=5 tid=0x000378e8 nid=0xbf8 waiting on condition 
[0x00000000..0x0007fae8]

"TimerQueue" daemon prio=5 tid=0x03245710 nid=0xc08 in Object.wait() 
[0x0385f000..0x0385fd68]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1101beb0> (a javax.swing.TimerQueue)
        at javax.swing.TimerQueue.run(TimerQueue.java:233)
        - locked <0x1101beb0> (a javax.swing.TimerQueue)
        at java.lang.Thread.run(Thread.java:595)

"AWT-EventQueue-1" prio=7 tid=0x02eb9460 nid=0xc40 in Object.wait() 
[0x0364f000..0x0364f9e8]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x1101bf28> (a java.awt.EventQueue)
        at java.lang.Object.wait(Object.java:474)
        at java.awt.EventQueue.getNextEvent(EventQueue.java:345)
        - locked <0x1101bf28> (a java.awt.EventQueue)
        at java.awt.EventDispatchThread.pumpOneEventForHierarchy
(EventDispatchThread.java:189)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy
(EventDispatchThread.java:163)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy
(EventDispatchThread.java:153)
        at java.awt.Dialog$1.run(Dialog.java:515)
        at java.awt.Dialog.show(Dialog.java:536)
        at org.netbeans.core.windows.services.NbPresenter.superShow
(NbPresenter.java:800)
        at org.netbeans.core.windows.services.NbPresenter.doShow
(NbPresenter.java:843)
        at org.netbeans.core.windows.services.NbPresenter.run
(NbPresenter.java:831)
        at org.openide.util.Mutex.doEventAccess(Mutex.java:1044)
        at org.openide.util.Mutex.readAccess(Mutex.java:170)
        at org.netbeans.core.windows.services.NbPresenter.show
(NbPresenter.java:816)
        at java.awt.Component.show(Component.java:1300)
        at java.awt.Component.setVisible(Component.java:1253)
        at org.netbeans.modules.profiler.NetBeansProfiler$ProgressPanel$2.run
(NetBeansProfiler.java:1016)
        at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:199)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:461)
        at java.awt.EventDispatchThread.pumpOneEventForHierarchy
(EventDispatchThread.java:234)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy
(EventDispatchThread.java:163)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)

"*** JFluid SeparateCmdExecutionThread ***" daemon prio=5 tid=0x0316ab20 
nid=0xd44 in Object.wait() [0x0379f000..0x0379fae8]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x11010300> (a java.lang.Object)
        at java.lang.Object.wait(Object.java:474)
        at com.sun.tools.profiler.ProfilerClient$SeparateCmdExecutionThread.run
(ProfilerClient.java:1275)
        - locked <0x11010300> (a java.lang.Object)

"AWT-Shutdown" prio=5 tid=0x02d9dd18 nid=0xb3c in Object.wait() 
[0x0360f000..0x0360f9e8]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x10a68ce0> (a java.lang.Object)
        at java.lang.Object.wait(Object.java:474)
        at sun.awt.AWTAutoShutdown.run(AWTAutoShutdown.java:259)
        - locked <0x10a68ce0> (a java.lang.Object)
        at java.lang.Thread.run(Thread.java:595)

"Java2D Disposer" daemon prio=10 tid=0x02e3a7b0 nid=0xf94 in Object.wait() 
[0x0315f000..0x0315fae8]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x10a4f948> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
        - locked <0x10a4f948> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
        at sun.java2d.Disposer.run(Disposer.java:107)
        at java.lang.Thread.run(Thread.java:595)

"Active Reference Queue Daemon" daemon prio=2 tid=0x02d7e0d0 nid=0x108 in 
Object.wait() [0x0311f000..0x0311fb68]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x10a4f9d0> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
        - locked <0x10a4f9d0> (a java.lang.ref.ReferenceQueue$Lock)
        at org.openide.util.Utilities$ActiveQueue.run(Utilities.java:2465)
        at java.lang.Thread.run(Thread.java:595)

"Timer-0" daemon prio=5 tid=0x02d5ad40 nid=0xbb4 in Object.wait() 
[0x030df000..0x030dfbe8]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x10a4fa60> (a java.util.TaskQueue)
        at java.util.TimerThread.mainLoop(Timer.java:509)
        - locked <0x10a4fa60> (a java.util.TaskQueue)
        at java.util.TimerThread.run(Timer.java:462)

"AWT-Windows" daemon prio=7 tid=0x02d42c88 nid=0x38c runnable 
[0x02fff000..0x02fffc68]
        at sun.awt.windows.WToolkit.eventLoop(Native Method)
        at sun.awt.windows.WToolkit.run(WToolkit.java:269)
        at java.lang.Thread.run(Thread.java:595)

"CLI Requests Server" daemon prio=5 tid=0x02d34838 nid=0x40c runnable 
[0x02f0f000..0x02f0f9e8]
        at java.net.PlainSocketImpl.socketAccept(Native Method)
        at java.net.PlainSocketImpl.accept(PlainSocketImpl.java:384)
        - locked <0x109f01a0> (a java.net.SocksSocketImpl)
        at java.net.ServerSocket.implAccept(ServerSocket.java:450)
        at java.net.ServerSocket.accept(ServerSocket.java:421)
        at org.netbeans.CLIHandler$Server.run(CLIHandler.java:758)

"Low Memory Detector" daemon prio=5 tid=0x00a92ab8 nid=0x310 runnable 
[0x00000000..0x00000000]

"CompilerThread0" daemon prio=10 tid=0x00a91690 nid=0xf70 waiting on condition 
[0x00000000..0x02c4f8c0]

"Signal Dispatcher" daemon prio=10 tid=0x00a90a18 nid=0xc20 waiting on 
condition [0x00000000..0x00000000]

"Finalizer" daemon prio=9 tid=0x00a87ec0 nid=0xff8 in Object.wait() 
[0x02bcf000..0x02bcfc68]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x109f0440> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:116)
        - locked <0x109f0440> (a java.lang.ref.ReferenceQueue$Lock)
        at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:132)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:159)

"Reference Handler" daemon prio=10 tid=0x00a86a30 nid=0xa80 in Object.wait() 
[0x02b8f000..0x02b8fce8]
        at java.lang.Object.wait(Native Method)
        - waiting on <0x109f0070> (a java.lang.ref.Reference$Lock)
        at java.lang.Object.wait(Object.java:474)
        at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:116)
        - locked <0x109f0070> (a java.lang.ref.Reference$Lock)

"VM Thread" prio=10 tid=0x00034f58 nid=0x850 runnable

"VM Periodic Task Thread" prio=10 tid=0x00a93c90 nid=0xa1c waiting on condition





Comment 4 iformanek 2005-06-15 10:31:38 UTC
Will not fix this issue, the vast majority of app startup slowdown is 
attributed to performing istrumentation and the resulting slowdown is 
proportional the the type/extent of instrumentation used.
Comment 5 ehucka 2006-10-09 12:09:19 UTC
Verification of old issues.
Comment 6 Alexander Kouznetsov 2007-02-12 22:07:13 UTC
Closing old issues.