grack.com

The nprof 0.6 alpha release is now available. Changes in this version are:

  • Fixes for recursive function calls
  • Some minor GUI updates (double-click profiler runs to open)
  • VS.NET add-in work - moved enable item to menu
  • Fixed major slowdown in large profiler runs introduced last version

Those people who use the VS.NET add-in should be very happy to know that it’s been worked on a fair bit. It should perform as expected now (at least it did in my testing).

The problem with recursive calls messing up the percentages has been fixed. With any luck I haven’t introduced any bugs with the other numbers. I’ve managed to profile an entire run of nprof with some good looking numbers. I’ve also changed the numbers that are displayed on the profile run list. They are:

  • # of calls: The total number of calls to the method
  • % of total: The percentage of total time (relative to the thread’s lifetime) spent in or under this method. This includes all time in methods called by this one.
  • % in method: Percentage of total time (relative to the thread’s lifetime) spent in the method itself.
  • % in children: Percentage of total time (relative to the thread’s lifetime) spent in the children of the method. This does not include time spent in the method called by children of children (or any other call to the method below itself).
  • % suspended: Percentage of total time (relative to the thread’s lifetime) during which the function was suspended.

In a future version I will allow customization of the displayed data columns, as well as batch sorting of the items.

Finally, I fixed a bug that I introduced in 0.5 that made large profile runs load very slowly (it was sorting the listview on each insertion). Large profile runs should no longer cause any grief.

Read full post