CLRProfiler V4 Released
CLRProfiler V4 is now publicly available. You may download from here:
https://www.microsoft.com/downloads/en/details.aspx?FamilyID=be2d842b-fdce-4600-8d32-a3cf74fda5e1
This is of interest both to folks who want a free profiler to diagnose memory issues with their managed apps, and for folks who author profilers of their own, and would like to look at source code of a real-world example of a profiler.
If you just want to run it…
Then the following new features will be of interest to you:
- CLRProfiler V4 allows you to profile managed code that uses .NET 2.0, 3.0, 3.5, or 4.0. However, you must always have .NET 4.0 installed on your box in order to use CLRProfiler V4, as CLRProfiler itself contains managed code that depends on .NET 4.0
- CLRProfiler V4 can target Silverlight 4 apps.
- CLRProfiler V4 may be used to attach to and detach from live processes, to generate heap graphs. (Note: This feature requires the process to be running .NET 4.0, does not work against Silverlight, and does not allow gathering allocation call stacks.)
- CLRProfiler V4 understands in-process side-by-side CLR instances, and can allow you to pick which CLR instance from a given process to profile.
If you want to write a profiler…
Then you may look through the source code for examples of all the above features, including how to target Silverlight, use the attach / detach API, and how to implement the “pick-one” approach for in-process side-by-side CLR instances.
Also, CLRProfiler V4 consumes the new Enter3/Leave3/Tailcall3 signatures along with FunctionIDMapper2, so you can consult the source for examples of the naked assembly language wrappers.
Problems?
If you encounter problems with CLRProfiler V4, the best place to go is our forum:
https://social.msdn.microsoft.com/forums/en-US/netfxtoolsdev/threads/
Comments
Anonymous
February 20, 2011
I'm honestly surprised how little notice this has received. Thanks for letting us know about it.Anonymous
March 27, 2011
You mention source being available ... where is that again?Anonymous
March 27, 2011
Both source and binaries are available from the same download link I posted above in this blog entryAnonymous
August 30, 2011
What's the license on the code ? Can I modify and put it on github ?Anonymous
August 30, 2011
re license: When you download, the self-extracing archive will show you the details of the license agreement (you must agree before the extraction process continues).Anonymous
August 31, 2011
Thanks for quick response. Unfortunately the license looks complicated and quite unfriendly :( Do you think it would be possible to relicense it under one of more recognized Microsoft licenses like MsPL or MsRL ?Anonymous
September 01, 2011
@Marcin We will not make any changes to the license for this release. We may consider it in a future release of this product.Anonymous
December 28, 2011
What about .NET 4 Update 1? When there will be update to CLR profiler? ThanksAnonymous
December 28, 2011
Hi, Saulius. No updates to CLRProfiler are planned until after the next new significant release of the CLR. Of course, I can't comment publicly on when that will be. :-) Thanks, DaveAnonymous
March 15, 2012
I've been tracking down some esoteric memory "leaks" with ANTS and .NET memory profiler, but only managed to isolate a couple of issues. With the CLR profiler and allocation tracking, pinpointing exact problematic methods was a piece of cake. Great tool!