X

An Oracle blog about NetBeans for PHP

Is the IDE Slow? Send a Profiling Snapshot

In NetBeans 6.9 is available Profile me Now! feature as well for PHP distribution. This feature generate a snapshot to understand what's going on if you think that the IDE is slow. By default the feature is not visible and you have to enable the IDE's self-profiling feature. Go to View main menu, then choose Toolbar and enable Memory toolbar.

Now you should see Memory toolbar and also Profile Me button.

Prepare the IDE for the operation that seems to be slow. Press the Profile Me button or use shortcut ALT+SHIFT+Y to start to collecting data. The icon of the button is change during profiling.

Perform the operation and when it's done, press the Profile Me button again or press the shortcut ALT+SHIFT+Y to stop profiling.

IDE creates a profiling snapshot and because there is not Profiler installed by default in PHP distribution, an information dialog is displayed with the path where the snapshot is saved.

If you don't use PHP distro or you installed the Java Profiler (the Java Profiler requires java support), then the snapshot is opened in NetBeans. In this case you have to save it via Export to ... button.

To provide a useful snapshot as much as possible, try to isolate the problematic operation so the snapshot doesn't contain other irrelevant data. For different problems create separate snapshots. Make sure there are no other CPU-heavy tasks running on your computer.

The CPU snapshot is in fact a set of thread dumps taken several
times per second (sampling technique). It has a very low overhead, so
almost does not affect the running IDE. It is not suitable for
profiling very short operations (under 1 second). The snapshot contains
no memory data. In case of problems with memory, see how to create a memory dump.

Check the memory bar to make sure the IDE does not run close
to memory limits (click the bar to force garbage collection). In such
case the slowness is caused by frequent garbage collections, and the
whole problem is likely memory-related. You might see OutOfMemoryError too. In such case a memory dump is needed.

Join the discussion

Comments ( 9 )
  • Tom Wednesday, June 23, 2010

    Great idea! Thanks! :)


  • MAk Thursday, June 24, 2010

    Hi,

    where do i post such memory dump?, for me opening a project takes 5-10mins in 6.9, the profiler finished preparing the dump before the ide could open the project but anyway im not sure where to send the dump file, FYI 6.8 was fine.


  • Rafa Thursday, June 24, 2010

    There were certain cases in netbeans 6.8 when using complex frameworks like Kohana3 where netbeans died trying to hint you about the methods available for the object, will try this afternoon at home


  • Petr Pisl Thursday, June 24, 2010

    @MAk: The things what you can do, is enter new issue and attach the dump there. You can enter new issue from this page http://netbeans.org/community/issues.html . There is also a link to a document how to entered bug. You have to create netbeans account, but this shouldn't be problem.

    Sure you can send to me, but the new issue is better solution that has advantages like tracking, discussion about the case in the bug etc. And for me it's mean that I have bigger power to push other teams fix possible problems.


  • Guillermo Carrion Friday, June 25, 2010

    I have uploaded my Profiling Snapshot to the issues sites.

    http://netbeans.org/bugzilla/show_bug.cgi?id=188103

    I've running into lots of

    problems since 6.9 was released.

    The main one is the IDE running very slow and using over 50% of CPU.

    The other is I can't rename variables (Ctrl+R) as I used to, it gives me the

    message: "The Rename refactoring cannot be applied in this context."

    Also, I can't go to a declaration of a function:

    $this->model_name->functionName($vars)

    using Ctrl+Click as I used to do in 6.8

    Those are my main issues with 6.9


  • Alabme Wednesday, July 14, 2010

    Why the svn commit prepare is so very very slow? Also auto-scanning? In eclipse it takes 1-2 sec.

    In Netbeans we are talking about 1-2 minutes... :(


  • Radek Matous Friday, July 16, 2010

    #188103 was hopefully fixed by fixing

    http://netbeans.org/bugzilla/show_bug.cgi?id=188155

    Please, verify to be able to fix it also for 6.9.1


  • guest Sunday, October 16, 2011

    how do i disable "saving snapshot" in netbeans 7?? its making my IDE freeze all the time


  • guest Tuesday, January 10, 2012

    @guest on October 17, 2011

    to disable that go to Profile menu, Advances commands, Unintegrate. Seems to worked for me, as i could not find a straight answer to this very same question. In case this messes things up, i recommend saving a copy off first.


Please enter your name.Please provide a valid email address.Please enter a comment.CAPTCHA challenge response provided was incorrect. Please try again.