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.
In order to analyse a sequence of operations in .npss file, it is important to select the right interval and see snapshot just for that interval. Often, the interval is defined by the time a given method is on stack. As the business need part of this report documents, this is not currently easy at all. Could we invest a bit and add an action: "show when this method is on stack in the time line?" It would have helped me, it will likely help me again soon (as the Abrams start still likely has similar bottlenecks), it would make the profiler better for everyone. Last, but not least it could be a base for "analyze lock contention" support, as that one is basically about finding the intervals when a given lock is being held. Details: I am using the CLI utilities to generate a npss snapshot http://wiki.netbeans.org/FitnessViaCLITimeLine and I am analyzing it in the profiler timeline view. I've noticed that one of the differences is the delay when a waitFinished() method is waiting for other threads to compute something. How can I find out who we are waiting for? The best is to select just the part of timeline when the waitFinished() method is on the stack! Then I'll see the main thread blocked, and all other threads doing something which will reveal what the main thread is waiting for. This is a trivial algorithmic operation. However there is no support from the profiler to do it via UI. As such I had to do it manually, by dividing ranges half by half and inspecting whether the waitFinished() method is still on stack or not. Took me about 30min and I did it wrong (as there were two invocations of the method in the timeline; I have not noticed and I was concentrating on the wrong one). After discussion with Tomáš Hůrka we found the second invocation and I could conclude that the system is being slowed down by processing NetBenas mime type registrations (which I plan to make more effective now). However it took us about hour of our work.
changeset: 210436:b43e221c9cc4 user: Tomas Hurka <thurka@netbeans.org> date: Mon Jan 16 20:58:30 2012 +0100 summary: issue #207204, initial version, which just prints intervals to console
Intervals are now marked in the timeline: http://hg.netbeans.org/profiler-main/rev/620d0fe6d8d7
Implemented. Please provide comments and verify.
Integrated into 'main-golden', will be available in build *201201250600* on http://bits.netbeans.org/dev/nightly/ (upload may still be in progress) Changeset: http://hg.netbeans.org/main/rev/b43e221c9cc4 User: Tomas Hurka <thurka@netbeans.org> Log: issue #207204, initial version, which just prints intervals to console
Does not work for me. In the attached snapshot select: org.netbeans.core.startup.MainLookup.modulesClassPathInitialized() 6.123302 1141 ms (6,1%) 131 ms 1 and choose select intervals. No intervals are selected.
Created attachment 115258 [details] Snapshot that does "not" contain org.netbeans.core.startup.MainLookup.modulesClassPathInitialized()
(In reply to comment #5) > Does not work for me. In the attached snapshot select: > > org.netbeans.core.startup.MainLookup.modulesClassPathInitialized() 6.123302 > 1141 ms (6,1%) 131 ms 1 > > and choose select intervals. No intervals are selected. You are right. This is covered by issue #207774 and it is already fixed.