January 2007 - Posts

.NET Framework Allocation Complexity Graph
26 January 07 10:16 AM | ricom | 7 Comments   
A quick graphical view of how the framework measures up. This graph shows the number of methods of any given allocation complexity on a logarithmic scale. This allocation complexity is discussed in more detail in performance quiz #12 and this summary Read More...
Filed under: ,
Performance Quiz #12 -- The Cost of a Good Hash -- Solution
26 January 07 10:01 AM | ricom | 6 Comments   
Well once again there have been many thoughtful replies to both the original question as well as the followup with hints. Recall the original question asked a bit of trivia: could you name 5 implementations of GetHashCode in the framework that do things you might not expect to see in a hash function? It's a little bit of a vague question and also requires a good deal of arcane knowledge of the CLR. The most interesting thing about the discussion I think is just what people considered "unusual." But as always there was a method to my madness. So without further ado here's my list of "unusual" hash functions, there are 53 of them. Read More...
Filed under: ,
Performance Quiz #12 -- The Cost of a Good Hash -- Some Help
24 January 07 11:30 AM | ricom | 32 Comments   
I continue to be astounded by what my readers can come up with. As usual I had a purpose for posing my last question and that purpose was to show that basically its hard to get a handle on what things cost in any kind of omnibus way. But imagine my surprise Read More...
Filed under: , ,
Performance Quiz #12 -- The Cost of a Good Hash
22 January 07 11:38 AM | ricom | 28 Comments   
This quiz is a little bit different than some of my others. Here is System.String.GetHashCode public override unsafe int GetHashCode() { fixed (char* text1 = ((char*) this)) { char* chPtr1 = text1; int num1 = 0x15051505; int num2 = num1; int* numPtr1 Read More...
Filed under: ,
Good Advice Scorned
19 January 07 10:04 AM | ricom | 5 Comments   
I thought it might be interesting to start a discussion about what is possibly the number one frustration of the performance architect: What do you do when they won't listen to you ? I'm sure you've all faced this, you lay out the situation, you show Read More...
Filed under:
Five Things About Me
12 January 07 12:38 PM | ricom | 3 Comments   
I guess it's fate: I was blog tagged by both Jeff Beehler and J.D. Meier within hours of one another. So here are my five things you probably didn't know about me (but some of you do). I got my first professional programming job (I was 15 years old) at Read More...
Filed under:
Memory leaks 101: Objects anchored by event generators
09 January 07 11:20 AM | ricom | 9 Comments   
This problem actually comes up pretty often so I thought I'd write a little article about it, and a couple of approaches to solving it. Basically any time you take an object "Your Object" whose life you want the GC to manage and then create a reference Read More...

Search

This Blog

Syndication

Page view tracker