66366 members! Sign up to stay informed.

Sponsored Links


Resources

.NET Research Library
Get .NET related white papers, case studies and webcasts

News News News Messages: 5 Messages: 5 Messages: 5 Printer friendly Printer friendly Printer friendly Post reply Post reply Post reply XML XML XML

MSDN TV: Introduction to the CLR Profiler

Posted by: Paul Ballard on February 21, 2005 DIGG
The CLR Profiler is an invaluable tool for looking under the covers of a running .NET application. In this new MSDN TV episode Peter Solich shows how to use the CLR Profiler to examine object allocation, lifespan, and the effects of the Dispose() method.
The common language runtime is the execution engine that executes Microsoft’s .NET applications. CLR profiler is a tool that’s focused on analyzing what’s going on on the garbage collector heap of Microsoft .NET applications. So it’s not a general purpose profiler, but it’s really focused on analyzing exactly what objects get allocated, how long they survive, what stays around and so on and so forth.
In the demo, he shows some interesting behavior within a WinForms application. In particular he shows why a locally scoped System.Drawing.Brush object actually stays around longer than other .NET objects based on the fact that it is a wrapper for a Win32 resource. He then shows that the object can be released sooner if the Dispose() method is called which is then displayed in the CLR Profiler.

Watch Introduction to the CLR Profiler.

Threaded replies

·  MSDN TV: Introduction to the CLR Profiler by Paul Ballard on Mon Feb 21 11:39:47 EST 2005
  ·  performance monitor is another good tool by peter lin on Mon Feb 21 12:42:39 EST 2005
    ·  performance monitor is another good tool by Tero Vaananen on Wed Feb 23 13:19:53 EST 2005
      ·  thanks for the info by peter lin on Fri Feb 25 09:30:15 EST 2005
        ·  thanks for the info by Tero Vaananen on Fri Feb 25 18:51:28 EST 2005
          ·  poor CLR Profilers by Pamir Erdem on Tue Dec 01 17:29:17 EST 2009
  Message #157783 Post reply Post reply Post reply Go to top Go to top Go to top

performance monitor is another good tool

Posted by: peter lin on February 21, 2005 in response to Message #157769
in the past, I've used windows performance monitors to track heap and memory usage. this way, when I run stress tests, I can record the memory before, after and at set intervals. the profiler tool is nice. Has anyone tried to run it to profile IIS? I haven't tried myself, just curious to see if others have attempted it.

  Message #158224 Post reply Post reply Post reply Go to top Go to top Go to top

performance monitor is another good tool

Posted by: Tero Vaananen on February 23, 2005 in response to Message #157783
I have not tried to use this particular one but my general impression of .NET profilers (after having gone through a dozen of them) is that they are not very impressive. A lot of them simply jam the IIS and you have to wait for ions for something to happen, some of them I never got to work with IIS. I am comparing this to some experiences with Java profilers, and they are a lot nicer. You can watch everything live - memory, threads, performance, bottlenecks, call graphs etc. it all just rolls in the same window 'live' as the program runs without crippling effects to the performance of the profiled app - no manual snapshotting, switching between tools, waiting forever, and it just works.

  Message #158623 Post reply Post reply Post reply Go to top Go to top Go to top

thanks for the info

Posted by: peter lin on February 25, 2005 in response to Message #158224
that saves me the trouble of trying to run the profiler with IIS. Hopefully it will improve over time. Though I wonder how hard it is going to be, since IIS is tied pretty closely to windows. When I profile tomcat or any other servlet container with OptimizeIt, it's straight forward and I can track down leaks, zombie threads or look at the call graph pretty easily.

  Message #158768 Post reply Post reply Post reply Go to top Go to top Go to top

thanks for the info

Posted by: Tero Vaananen on February 25, 2005 in response to Message #158623
I think the sorry state of .NET profiles has a lot to do with the .NET instrumentation API. I doubt that it is incredibly difficult to provide the instrumentation data in a nicely packaged user interface. If it were possible to do, I am sure we would have nice .NET profilers available.

  Message #329779 Post reply Post reply Post reply Go to top Go to top Go to top

poor CLR Profilers

Posted by: Pamir Erdem on December 01, 2009 in response to Message #158768
I think CLR instrumentation api and lack of AOP languages in .NETi profiler side of .NET is very poor. For example if you work on java profilers especially JxInsight it uses the benefits of AOP very sucessfully.

 
New content on TheServerSide.NETNew content on TheServerSide.NETNew content on TheServerSide.NET

DSLs and language interop

Language "mashups" will become more prominent, and developers will become polyglots, one programmer suggests.

VS 2008 Resources

SearchWinDevelopment.com offers an introduction to the language, performance, testing and data management improvements in VS 2008.

VB code downloads home

VBCode.com code snippets cover all aspects of application development, from data binding to security to the user interface.

XAML Learning Guide

Get up to date on XAML best practices with a variety of articles, tutorials and webcasts. [SearchWinDevelopment.com]

Company uses VSTS DB edition to tame workflow

One team's experience with the VSTS DB edition suggests that it can improve workflow for dev teams. It also enhanced Agile efforts. (June 24, Article)

Book: Intro to DSL Tools

Microsoft has begun to include DSL tools in the VSTS kit. A new book by Steve Cook and other VSTS team members helps set the stage. (June 24, Article)

I See the Silverlight Shining!

Cartoon: Be it ever so humble there is no place like your home after you get a Microsoft Home Server . (June 18, Cartoon)

A look at .NET 3.5

Microsoft's Thom Robbins says new technology to highlight in NET 3.5 includes AJAX, LINQ for both C# and VB, as well as tooling enhancements intended to ease the task of building WPF, WF and WCF apps. (June 29, Podcast)

Venkat Subramaniam on AJAX

Venkat Subramaniam discusses AJAX bottlenecks, the tenets of Agile development and more. He spoke at the Ajax Experience. (June 25, Tech Talk)

Building a Claims-Based Security Model in WCF - Part 2

In the second of a two-part series, Michele Leroux Bustamente discusses design decisions related to the claims-based security model. Read the story and walk through the process for creating a set of claims-based utilities to encapsulate claims authorization at the service tier. (May 24, Article)

Introducing the Entity Framework

Understanding why the Entity Framework exists and learning where it can fit into your projects can get you prepared for the eventual release early next year. (May 10, Article)

WCF Security Learning Guide

Resource: This learning guide gives you quick access to useful links on Windows Communication Foundation security information. (April 24, Article)

Brad Abrams: Patterns for successful ASP.NET AJAX development

TSS.NET's Jack Vaughan spoke recently spoke with Microsoft's Brad Abrams to find out what he is seeing in the field and what the chefs in Redmond are cooking. Along the way he discusses patterns of AJAX frameworks. (April 11, Article)

Building a Claims-Based Security Model in WCF

In a two-part series, Michele Leroux Bustamente explains how claims-based security is supported by WCF, and how you can implement a claims-based security model for your services. (March 29, Article)

Authoring workflow using XAML

Windows Workflow Foundation is a new technology that many developers will need to get their heads around. In a brief excerpt adapted from Programming Windows Workflow Foundation: Practical WF Techniques and Examples using XAML and C#, K.Scott Allen considers aspects of workflow definition. (March 22, Chapter Excerpt)

News | Blogs | Discussions | Tech talks | Patterns | Reviews | White Papers | Downloads | Articles | Media kit | About
All Content Copyright ©2007 TheServerSide Privacy Policy
Site Map