David Broman's CLR Profiling API Blog
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