Geeks With Blogs
Blog Moved to http://podwysocki.codebetter.com/ Blog Moved to http://podwysocki.codebetter.com/
Lately, I have been doing rather large data migration to and from SharePoint Portal Server 2003 using the API and was running into performance issues (Not a surprise really).  Anyhow, I needed to find out some basic information about memory usage as well as some of the .NET related information.  I found the solution with Process Explorer, written by Mark Russinovich.  The tool is available via this link:
 
When you first launch the application, it shows all running applications along with the process ID, CPU Usage, Description and Company Name.  Below is a basic screenshot of this:
 
 
This is pretty basic information.  Where we get the real interesting information is when we actually click properties.  From the next picture listed, we can view all types of information about the .NET runtime for this particular process.  For this example, I chose devenv.exe (why not?).  From the .NET tab, you have the option of viewing the following:
  • .NET CLR Data which contains information about the System.Data database communications
  • .NET CLR Exceptioins contains information about all exceptions thrown
  • .NET CLR Interop has information about marshalling and type library import information.
  • .NET CLR Jit contains information about the JIT compiler
  • .NET CLR Loading which contains information about the class loader
  • .NET CLR Locks & Threads has information about locks, lock contention and basic thread info
  • .NET CLR Memory which contains information about the Garbage Collector (GC) including generations, and GC Handles
  •  .NET CLR Remoting has information about remote calls and contexts
  • .NET CLR Security which contains information about link time and stack walk checks.
Below is a picture of devenv.exe's memory as shown by the Process Explorer properties window.
 
 
This window was very helpful in discovering how memory was used during my long SharePoint migrations to watch how the GC was handling memory.  Some of the longer processes that would take hours to run for thousands of documents, the memory would get into the 500K range and I was curious how the GC was handling the memory.
 
I hope this tool can help you with diagnosing some of your .NET problems or at least watching how the CLR works while your process is running.
 
Posted on Thursday, May 4, 2006 4:58 PM Free Tools , Windows | Back to top


Comments on this post: Free Tool - Process Explorer

No comments posted yet.
Your comment:
 (will show your gravatar)


Copyright © Matthew Podwysocki | Powered by: GeeksWithBlogs.net