Comments
4 comments
-
Hi,
thanks for the post. There won't be any Performance comparison feature in V5.0 although this is a feature that will probably make it in sooner rather than later.
As you mentioned - profiling comparisons can be really difficult if the stack traces have changed either with method names or by the depth of the call stack. A meaningful comparison can be very difficult. With AP5 you could also have a different duration of time selected as well which could complicate matters further depending on the code. What would you suggest on these occassions? Simply inform the user that a comparison of stack traces won't really be useful? Maybe we could provide some basic stats like total length of time of call stack, average time to execute a method and the slowest and fastest method?
With the All Methods grid it would be a little easier. There is one suggestion I could offer as a work around for this view in the mean time. If you use Ctrl + A, Ctrl + C on the grid and paste the 2 sets of results into Excel you could do all the diffs you like on the data from within that and create graphs etc... Not ideal but may be useful for you.
The Memory Profiler was completely rewritten for V5 and that really marks the largest change in the current upcoming release. If you have a chance to try it out i'd like to hear any comments you have on it.
Regards,
Stephen -
Hi Stephen,
I think the method grid would probably be the best place to start since it's the "simplest". Probably should be the main/only view for comparison, especially if the you allow comparisons of more than 2 sessions.
If the hit counts change, that could be very useful to compare. The big hurdle would be changes to the stack trace.
If the stack trace changed I might have a screen that is broken into thirds horizontally, showing methods in both sessions, added methods, removed methods. The columns would be made up of the hit count and method timing (one pair of columns for each session).
I suppose there could be a listbox on the left edge where I could drag & drop the sessions I want to compare into. Highlighting them would show the comparison. They should be automatically ordered by session date/time.
Export to Excel could also be handy in this view.
Hope this helps. -
Hi Tom,
I'll see about getting the Export functionality improved for V5 although it will be very basic. A better comparison feature will definitely be post V5.
Thanks for your thoughts on it. Very useful to know what you might expect. I might drop you an email or post when designing this feature for feedback.
There's one other point I want to raise - depending on what your computer is doing at the time can affect timings. For example if you are profiling under 'high load' conditions (lots of apps running at once) and then have a very different set of circumstances the next time when profiling it can have a natual effect on the timings due to the impact on the CPU. Profiling on completely different computers with different specs would also potentially add more complications.
Just wanted to raise that issue too. Obviously if you want to take something from 30secs down to 3secs it won't really matter as much. However if very small increments are the focus then it becomes a little more grey.
Stephen -
Hi Stephen,
It was just a thought. I've had this functionality in the past on a profiler I used and it turned out to be very useful (though their results display could have used more attention). They actually tracked a profiling sessions automatically which was nice, but once you had a good history of them, they made VS bog down unless you reduced the number of old sessions. They also only let you compare 2 sessions. I thought comparing more at 1 time would have been useful in some circumstances.
Their integration with VS was nice to a certain extent, but they lagged pretty badly when new versions of VS would arrive. It would take nearly a year later for updates to support the new environment. I like your external to VS approach better. Also doesn't get the overhead of VS involved. Besides with the new VS2010 coming out this fall and its new add-in model, I suspect this may be a big pain point for them and their integration to VS. You guys, on the other hand, I would think would have very few issues unless the PDB format has drastically changed. Have you guys been following the VS2010 development?
Feel free to drop me a line on this if you guys decide to add the comparison stuff and want my input.
Yes, I am pretty careful to make sure the conditions are as close to the same as possible when creating profiling sessions.
I recently added a 2nd monitor to my setup. Thank you for doing all the right things when saving window positions and such to support this properly (many apps don't). Sometimes it's the little things that make all the difference.
Keep up the great work. Looking forward to AP5.
Tom
Add comment
Please sign in to leave a comment.
An integrated view showing red/green, up/down arrows for improvements/degradations would be very nice. I know comparison stuff can be hard especially when refactoring is involved and methods get added and removed. Method level charting of times could be useful (if you allow comparisons of more than 2 result history files).
I haven't seen any mentions of new features in the ANTS5 Performance Profiler other than some line level timing improvements and improvements using IIS. Any thing else the Performance Profiler has going for it above and beyond v4?
The more I work with v4 the more I like it, but I find it would be nice to see where and by how much things have improved during the course of my changes and refinements.
Keep up the great work. Looking forward to v5.