4

The thread here seems close: Profiling ASP.NET websites with EQATEC Profiler

However, in the free version of Equatec I downloaded today there is no checkboxes for ASP.NET, and ordinary web. I have pointed the App path to my bin directory in my project folder as well as started up the localhost hosting for my application via Visual Studio.

I am open to other free tools as well. I am just looking for someway to profile the code as to optimize some reflection we are using.

I am using the professional edition so unfortunantly do not have access to MS Code Profiling.

I am looking to do performance profiling at this point.

Is the free version of Equatec capable of doing ASP.NET applications?

Is there a free profiler (I realize this has been asked before, and little seems to have surfaced but paid apps, but might as well ask)?

Is MVC a special thing to look for in a profiler?

Community
  • 1
  • 1
Joshua Enfield
  • 17,642
  • 10
  • 51
  • 98
  • possible duplicate of [ASP.NET MVC Application performance profiling](http://stackoverflow.com/questions/3013166/asp-net-mvc-application-performance-profiling) – John Farrell Apr 14 '11 at 19:57
  • The entire related sidebar is full of duplicates as well. When you ask a question the possible related duplicates are on that screen. – John Farrell Apr 14 '11 at 19:58
  • I am asking specifically in regard to Eqatec, as well as MVC. Many of those threads often claim Eqatec is capable of this, but are out of date as much of the advice doesn't apply anymore because the configs changed. – Joshua Enfield Apr 14 '11 at 20:05
  • @Joshua Enfield - User guide looks the same as in the accepted answer in the dupe question. The Equatec user guide actually links to the stackoverflow duplicate question! If your question is more general then there are already a dozen or so dupes in the sidebar. Dupes on both counts. – John Farrell Apr 14 '11 at 21:25
  • 1
    #jfar - I'll reiterate. The guide is out of date. The configurations have changed. Equatec in older threads admits to being lax on ASP.NET documentation hence why they refer to the SO thread that is two years old at it's latest update. I already admitted the dup on the free profiler part of my question in my question, but it is not the primary part of my post. – Joshua Enfield Apr 14 '11 at 21:30
  • 1 year old at it's latest update*, once again out of date* – Joshua Enfield Apr 14 '11 at 21:38
  • @Joshua Enfield - Ok, understood, I'd take back my dupe if I could. – John Farrell Apr 14 '11 at 21:48
  • @Joshua: The guide is actually not out of date: the few steps described in the stackoverflow duplicate question (last edited April 8th) still describes best how you should profile ASP.NET apps. If it doesn't work for you then please explain specifically what you're doing and what doesn't work. – Richard Flamsholt Apr 14 '11 at 21:48
  • @Joshua: Just noticed the "there is no checkboxes for ASP.NET"-part of your question. I think you've looked at the old, obsolete answer in the stackoverflow thread - look at the accepted answer instead, the one with currently 16 upvotes. I hope this helps. – Richard Flamsholt Apr 14 '11 at 21:55
  • @Richard - If I follow just the new one both buttons are disabled as they are in the images. I am not able to Run the profiling. This is of course after adding the compiled DLL from the bin folder of my application. It complains that there is no main method (entry point). Which means it's still trying to profile it like an executable with an entry point. In the guide accompanying the answer the checkboxes allowed you to manually select ASP.NET application. If it's supposed to be automatic it's not working for me with VS2010 webforms ASP.NET. – Joshua Enfield Apr 15 '11 at 00:13

3 Answers3

2

Comprehensive profiling tools still seem to be quite expensive. I like the dotTrace family, but they're not free.

You haven't specified what kind of profiling you want to do. Are you trying to understand more about the memory usage of your application, or CPU usage?

There is nothing special about MVC applications when it comes to profiling. You will need a profiler that's capable of launching ASP.NET. Beyond that, MVC is just a regular bunch of class libraries.

Have you tried the free CLR Profiler? It handles ASP.NET and will show both memory and some method call activity. It's not as comprehensive as say dotTrace, but it is a great free alternative if you're starting out.

Drew Noakes
  • 300,895
  • 165
  • 679
  • 742
1

The guide is actually not out of date: the few steps described in the stackoverflow duplicate question (last edited April 8th) still describes best how you should profile ASP.NET apps. Note that you should look at the accepted answer, the one with currently 16 upvotes.

After you've build the instrumented app the important thing to note in the stackoverflow-answer above is step 3: "load your app". It means that you should cause your app to be loaded and is the only step the profiler can't do automatically for ASP.NET apps.

You typically load the app simply by navigating to it in a browser so you simply need to do that after the build-step. When your (instrumented) code is activated the profiling part of it will spring into life and connect to the profiler and then you can take snapshots.

Note that ASP.NET doesn't need a main entry point. That's just an added convenience for automatically taking snapshots for real executables that has a Main method.

Community
  • 1
  • 1
  • Thank you for this. The load your app step in the accepted answer was a little vague, I thought that meant something in Eqatec. I appreciate your help xD – Joshua Enfield Apr 15 '11 at 08:21
0

You just need a .NET profiler.

Profiling WebForms, MVC, SharePoint, Sitecore, Ektron, Sitefinity, or any other product that runs on .NET doesn't change that.

Nariman
  • 6,368
  • 1
  • 35
  • 50