What is your Allocation Number?

Rico is doing some very interesting work to get some sort of idea about the allocation overhead of using different parts of the .NET Framework. As he says, this is a fairly rough approximation done just with static analysis, but it does give you something to chew on.

Rico starts by focusing on making a good hashcode function…

I thought I’d look at properties. As you know the Framework Design Guidelines encourages you to make simple properties that are logically just fields. There is a reasonable assumption that the get accessor of a property would not have to allocate any data.

The good news is the vast majority of these had 0 or 1 allocation. The thing to watch out for is that some of the worst offenders are properties, with 15 with a score over 10… that will certainly be a surprise in your working set if you were expecting just a field access!

Check out the costs file for your own look… can’t wait to see what interesting things you folks find with this data.


Thanks Rico!





Comments (0)