Mid-life crisis

This particular problem (I call it mid-life-crisis) seems to come up fairly often so I thought I’d write up some general advice on it.  The symptoms go something like this:  There is a server process (usually a web server) and that process has a high percentage time spend in the garbage collector, like say 30%,…

35

Visual Studio — working on performance

Jason has a new posting on the progress of Visual Studio and I wanted to chime in myself.  Some people have been wondering what I’ve been up to… I think you’ll be happy to hear that about 2 months ago I put down a bunch of my long term planning responsibilities so that I could work…

35

Performance Quiz #9 : IList<T> List and array speed

A short and sweet quiz with lots of juicy discussion possibilities:            public int Sum(IList<ushort> indices)           {               int result = 0;               for (int i = 0; i < indices.Count; i++)                    result += indices[i];               return result;           } Considering only the time it takes to do the Sum (i.e. assuming we had already set up the array/list) which gives better…

34

Putting your synchronization at the correct level

Continuing in what’s turned into my series on locking advice, I have a new example for you of a typical problem that happens in class design.  As usual I’ve simplified this almost to the point of being silly to illustrate the problem.  Hopefully the crux of what is going on still shows through. The theme…

33

Performance Quiz #12 — The Cost of a Good Hash — Some Help

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 when Frank and Shuggy turned…

32

Bad Analysis Worse Than None

Once again I’ll begin by saying that I’m simplifying the below in the interest of not writing a novel, so please take this article as only approximately correct.  I try to make the principles more important than the details.   I’ve said before, that if you make no measurements, you’re pretty much doomed to miserable…

31

Performance Problems Survey

Gentle Readers, see if you can comment on the following Hypothetical Situation: Your project is “In Trouble.”  The Big Boss has just walked into your office and told you that he needs you to save the day.  Again? Which of the following is more likely the culprit of this crisis that has your boss in…

31

Visual Studio 2010 Performance Part 1: Startup

I want to start by thanking everyone that has commented on the Beta (by posting their thoughts here or elsewhere) for doing so. Please keep those comments coming! They have a great impact on the senior leadership here and they are excellent rallying points for all the teams. They really do make a difference! Jason…

31

My History of Visual Studio (Part 1)

[All the other Parts: History of Visual Studio] I wrote in the teaser that there is no one “History of Visual Studio”, there are as many histories as there were people involved.  If I may repurpose a famous quote, “There are eight million stories in the Naked City…” This is one of them. Visual Studio’s…

30

A little 64 bit follow-up

I recently wrote a pair of at least slightly controversial articles about 64-bit vs. 32-bit applications and the performance costs associated with going to 64 bit. They are here and here. Some people thought I was nuts. Some people provided benchmarks “proving” that 64 bit code is in fact faster than 32 bit code. I…

29