Info about the Common Language Runtime's Profiling API
Goodbye from Dave
Hello to my millions of readers across the world. Or, well, maybe 10 readers across the world....
Date: 10/10/2013
Writing a Profiler of Windows Store apps
If you’ve written a profiler that consumes the CLR Profiling API, and are looking to update it to...
Date: 01/09/2013
New sample code for rewriting IL: ILRewrite Profiler
In my previous post, I mentioned the new home for CLRProfiler, where you can find its latest...
Date: 11/19/2012
CLRProfiler 4.5 released: includes Windows Store app support
You can find CLRProfiler 4.5 at its new home on CodePlex: https://clrprofiler.codeplex.com/ If you’re...
Date: 11/19/2012
GC Heap and Alignment Padding
The docs for GetObjectSize have recently been updated with this info, but I wanted to mention it...
Date: 12/29/2011
When is it safe to use ObjectIDs?
As mentioned in this post, ObjectIDs are really pointers to managed objects on the GC heap. And as...
Date: 12/29/2011
Metadata Tokens, Run-Time IDs, and Type Loading
Overview In this post, I write about the two primary kinds of IDs your profiler deals with, when...
Date: 10/17/2011
ReJIT: A How-To Guide
By now, you’ve surely downloaded your copy of the .NET 4.5 Developer Preview, and you’ve opened up...
Date: 10/12/2011
ReJIT Limitations in .NET 4.5
Anyone who’s read a newspaper in the past few weeks knows that the Profiling API in .NET 4.5 will...
Date: 10/10/2011
ReJIT for Realz?!
Yes! Check out this new video on channel 9 for the scoop:...
Date: 09/26/2011
CLRProfiler V4 Released
CLRProfiler V4 is now publicly available. You may download from here:...
Date: 02/01/2011
SigParse uploaded to MSDN Code Gallery
A while back I posted some sample code written by Rico Mariani to parse CLR metadata signatures....
Date: 08/25/2010
Profilers, in-process side-by-side CLR instances, and a free test harness
My previous post on New stuff in Profiling API for upcoming CLR 4.0 mentioned that any profiler that...
Date: 08/25/2010
CLR V4: Profiler Detach
I described how profilers may attach to already-running processes in some previous posts (#1 and...
Date: 02/03/2010
Generics and Your Profiler
If you’re writing a profiler that you expect to run against CLR 2.0 or greater, you probably care...
Date: 01/28/2010
Writing a Profiler for Silverlight 4
The Silverlight 4 beta has been released a while ago (see this), and one of the new features in...
Date: 01/21/2010
CLR V4: Stuff That May Break Your Profiler
When CLR V2 came out, we made a big decision. If your profiler has not been upgraded for V2...
Date: 01/07/2010
CLR V4: Profiler Attach Basics With Sample Code
A new feature in CLR V4 is the ability to attach a profiler to a process after that process has...
Date: 11/04/2009
CLR V4 Beta 2 Released!
All you profiler writers will want to try out your profiler on the latest and greatest! Information...
Date: 10/19/2009
Type Forwarding
MSDN defines “type forwarding” as moving “a type to another assembly without having to recompile...
Date: 09/30/2009
CLR V4: Load your profiler without using the registry
One of the new features in CLR V4 is the ability to load your profiler without needing to register...
Date: 06/16/2009
What does Dave look like?
Find out on channel 9 as Jon Langdon, Thomas Lai, and I discuss some of the new diagnostics features...
Date: 05/28/2009
Run your V2 profiler binary on CLR V4
Ok, you've installed VS 2010 beta 1, along with .NET FX 4.0 beta 1, and you're wondering--can you...
Date: 05/26/2009
CLR V4 Beta 1 Released!
Now is the time to try out your profiler against the new .NET FX 4.0 Beta 1 bits. I'll be...
Date: 05/26/2009
FunctionHooks.zip re-uploaded
Jonathan Keljo's blog entry on the enter/leave/tailcall function hooks had a link to sample code...
Date: 02/14/2009
Why we have CORPROF_E_UNSUPPORTED_CALL_SEQUENCE
What follows is a long-lost blog entry that Jonathan Keljo had been working on. I brushed off some...
Date: 12/23/2008
New stuff in Profiling API for upcoming CLR 4.0
Now that we've finally announced at PDC many of the new features coming up in the next major release...
Date: 11/10/2008
Visual Studio 2008 SP1 and .NET Framework 3.5 SP1 Released
See Soma's blog entry for more information. Also, I updated the table that maps Visual Studio...
Date: 08/13/2008
BUG: GetILFunctionBody returns wrong size
In case you missed it, there was a post on our forum here:...
Date: 05/22/2008
Debugging Your Profiler II: SOS and IDs
In this debugging post, I'll talk about the various IDs the profiling API exposes to your profiler,...
Date: 12/18/2007
Debugging Your Profiler I: Activation
This is the first of some tips to help you debug your profiler. Note that these tips assume...
Date: 12/11/2007
Versions of Microsoft .NET Framework, CLR, and Your Profiler
[Updated 8/13/2008 with the release of Visual Studio 2008 SP1.] With the many releases of the...
Date: 12/06/2007
Test my Code! (And get paid for it.)
We've got a new job opening listed here. If your idea of fun is writing debuggers and...
Date: 11/13/2007
Tail call JIT conditions
Here are the full details I received from Grant Richins and Fei Chen when I asked how the JIT...
Date: 06/20/2007
New version of CLRProfiler released (for CLR 2.x only)
If you're having trouble with CLRProfiler crashing the aspnet_wp process, along the lines of this...
Date: 04/26/2007
Enter, Leave, Tailcall Hooks Part 1: The Basics
The CLR Profiling API allows you to hook managed functions so that your profiler is called when a...
Date: 03/22/2007
Creating an IL-rewriting profiler
A frequent topic of discussion between those of us on the CLR Profiling API team at Microsoft and...
Date: 03/06/2007
Forum for Profiling API questions (and more)
The debugging forum has recently had its scope expanded to managed-code tool development in general,...
Date: 12/11/2006
WOW64 and Your Profiler
Has this ever happened to you? My profiler loads and runs great on my 32 bit box. But when I try to...
Date: 11/13/2006
Bug! Inspecting Value-Type Returns Workaround #2
12/6/2007 Update: The bug described below has been fixed in CLR 2.0 SP1. (See this post for...
Date: 06/07/2006
Add local to LocalVarSig
All source code is provided as is, with no warranties intended or implied. Use at your own risk. //...
Date: 05/18/2006
Bug! Inspecting Value-Type Returns
12/6/2007 Update: The bug described below has been fixed in CLR 2.0 SP1. (See this post for...
Date: 02/27/2006
DoStackSnapshot Tidbit #3: Callback CONTEXT Registers
In my initial post about DoStackSnapshot, I touched on how and when your profiler can "fill in the...
Date: 10/24/2005
Sample: A Signature Blob Parser for your Profiler
8/25/10 Update: The sample code linked below is now also available on the MSDN Code Gallery SigParse...
Date: 10/13/2005
sigparse.cpp
8/25/10 Update: All sample code for this topic is now also available on the MSDN Code Gallery...
Date: 10/13/2005
sigformat.cpp
8/25/10 Update: All sample code for this topic is now also available on the MSDN Code Gallery...
Date: 10/13/2005
PlugInToYourProfiler.cpp
8/25/10 Update: All sample code for this topic is now also available on the MSDN Code Gallery...
Date: 10/13/2005