Do Performance Analysis in Context

I had an interesting email conversation here at work recently and as usual I can’t share it all but I can share some of it because it’s generally applicable and perhaps others could benefit from my response.  The particulars are really not important at all in any case, the concept is what counts. What happened…

3

Avoiding Coding Pitfalls with Performance Signatures

On Friday of last week I gave this presentation at the Computer Measurements Group CMG2006 conference(http://www.cmg.org).  I had previously alluded to it in this posting and I have been waiting to write about it until after the conference. So for the benefit of those of you who couldn’t be there; here’s the slides plus some high…

11

Costs, Modelling, and Managing Risk

Here’s a little peice of mail I send out to some folks today discussing some root causes of performance problems generally. I’ve written about basically all of this before but here it is in summary form perhaps mostly to prove that what I tell my colleagues here really is the same as what I tell…

10

The True Cost of .NET Exceptions — Solution

Well, once again my elite readers have made a solution posting by me nearly redundant.  There were many good viewpoints in response to my article including some especially excellent comments that were spot on. Now there are several things worth saying, but I think perhaps the most important one, in my opinion, was hit on…

7

The True Cost of .NET Exceptions

Here’s an article under Jon’s Homepage that was just brought to my attention.  It’s an interesting analysis of (approximately) the raw cost of throwing an exception. Jon is definately right on that 200 exceptions per hour isn’t gonna hurt anything. However, there are some problems with the analysis at least in my opinion, because I believe…

26

Performance Quiz #11: Ten Questions on Value-Based Programming : Solution

In my last quiz I asked a few questions about a few hypothetical classes that might appear in a value-rich context.  I styled my example in the form of some graphics library classes but the idea is a general one.  Many contexts can and should be rich in values to get nice data density and…

11

NameValueCollection vs. Hashtable performance considerations

We had a good discussion on the NameValueCollection internally not too long ago and I asked my friends on the BCL Team to post a summary of the things that were discussed.  Kim Hamilton delivered and how.  Great tidbits like: For example, when doing 40,000 lookups on a collection size of 100,000, NameValueCollection is about 2.6x…

2

Performance Quiz #11: Ten Questions on Value-Based Programming

Some of you have probably heard one or more of my talks, or read the annotations I made in the Design Guidelines.  If you have then you already know that I don’t always agree with every suggested guideline.  Especially not in every context.  It’s probably fair to say that one of the greatest areas of disagreement…

22

Taming the CLR: How to Write Real-Time Managed Code

I’ve actually been meaning to write about real time applications for ages so when I was asked to give a talk at MS Gamefest (http://microsoftgamefest.com) I jumped at the opportunity to give myself a hard reason to do the homework.  Last Tuesday I gave that talk  and below are the slide contents plus my speaker notes.  The actual…

37

My 18th anniversary at MS

Today marks 18 years for me at Microsoft.  In a little twist of fate, I’ll be presenting at our Gamefest conference which is kind of fitting because I got my start programming games for the PET 2001 in Microsoft BASIC (before it was Visual) and 6502 assembly language about 8 years before that.  It turns out writing games…

3