Rico Mariani's Performance Tidbits
Implying no warranties and conferring no rights: "AS IS" since 1988
Tracking changes over time
I got some interesting questions from a colleague over the long weekend which I thought were of...
Author: ricom Date: 09/07/2004
Performance Tidbits
(Some additional remarks on this posting can be found here -- feel free to continue comments on that...
Author: ricom Date: 08/24/2004
Performance Quiz #4 -- Of Sets and Sundry -- Solution
Well thank you all very much for those great responses, I was very impressed! What I did to get my...
Author: ricom Date: 08/19/2004
Performance Quiz #4 -- Of Sets and Sundry
By popular demand, here is the next exciting Performance Quiz -- your chance for fame, glory and...
Author: ricom Date: 08/18/2004
Personal emails
I got some more personal email via my blog here today and I think it's sort of reaching the point...
Author: ricom Date: 07/13/2004
csc default options change (use /o+ now)
Eric writes about this in his blog It's important that you get in the habit of throwing /o+ for your...
Author: ricom Date: 07/12/2004
When to create exception objects
I got this question today, thought I'd share my answer here: Q: People are creating and throwing an...
Author: ricom Date: 07/12/2004
It's a feedback time of year
Performance review time at Microsoft is a good time for self-reflection and to make a point of...
Author: ricom Date: 07/01/2004
foreach and performance rules
I was looking at Brad’s blog this morning and I was astounded to find that some people had...
Author: ricom Date: 06/30/2004
Performance Quiz #3 -- Solution
And now the exciting solution to Performance Quiz #3! There's actually an enourmous amount of...
Author: ricom Date: 06/29/2004
Performance Quiz #3
The funny thing about managed code is that sometimes people forget that just because we offer an...
Author: ricom Date: 06/25/2004
Optimistic vs. Pessimistic Locking consequences
Putting on my "database guy" hat, a few days I was asked to comment on locking techniques for...
Author: ricom Date: 06/24/2004
Wow, someone was listening :)
I got quoted in Marco Dorantes' WebLog -- he has some interesting thoughts, might want to give him a...
Author: ricom Date: 06/23/2004
Of Strings and Services
Here's some Q&A that followed a recent internal performance talk that I thought was generally...
Author: ricom Date: 06/23/2004
Engineering is a quantitative discipline
A few days ago I saw request for performance related information on one of our internal discussion...
Author: ricom Date: 06/16/2004
Two quick hrefs
My colleague Maoni has a blog, you might want to give it a visit. Also there was a great deal of...
Author: ricom Date: 06/03/2004
A few questions and answers about using IDisposable
I wrote a little bit on Disposable objects and their uses in Chapter 5 of the Performance and...
Author: ricom Date: 05/19/2004
Some thoughts/advice about databases and caching
As usual, kindly allow me to speak in rough terms so that I might be brief keeping in mind that...
Author: ricom Date: 05/10/2004
Improving .NET Application Performance and Scalability PDF format available
Improving .NET Application Performance and Scalability now has a link to download the PDF
Author: ricom Date: 05/05/2004
[MethodImpl(MethodImplOptions.Synchronized)] promised followup
OK, proof positive that even when sleep deprived I can still think :)...
Author: ricom Date: 05/05/2004
MethodImplOptions.Synchronized
>>I just wrote the below but you know what it's 12:17am and I'm suddenly not so sure of...
Author: ricom Date: 05/05/2004
Cache Invalidation and Database dependency?
Mandeep Singh just asked about cache invalidation policies in feedback on a previous entry. Of...
Author: ricom Date: 05/04/2004
Enumerating over arrays with for vs. foreach
Brad Abrams forwarded an interesting question to me this morning Questions: What is the difference...
Author: ricom Date: 04/29/2004
Improving .NET Application Performance and Scalability
I'm happy to announce that the Patterns and Practices group has made the release version of...
Author: ricom Date: 04/28/2004
Performance Planning
I whipped up this guide to help people on internal teams take some of our larger goals and think...
Author: ricom Date: 04/22/2004
Shipping Software
Many years ago I was invited to give a guest lecture at the University of British Columbia and today...
Author: ricom Date: 04/20/2004
What I do in my spare time
Many months ago, I was asked by the folks in Patterns and Practices to help review their latest...
Author: ricom Date: 03/30/2004
Performance Quiz #2
Well it was so much fun the first time, it's time for an encore :) Consider the functions Test1 and...
Author: ricom Date: 03/29/2004
My mom doesn't care about space
Now, before I go on, in the interest of not filling this article with assorted exceptions for...
Author: ricom Date: 03/15/2004
Performance Quiz #1 (of a series?)
Recently there was a discussion on one of our internal email aliases in which this problem came up....
Author: ricom Date: 03/12/2004
He will triumph who knows when to wrap and when not to
This advice is somewhat redundant with what I posted a few days ago but, what the heck, it's got...
Author: ricom Date: 03/05/2004
Sometimes it's all in the numbers
Here's a little story about a problem I diagnosed back when I was working on sidewalk.com that I...
Author: ricom Date: 03/02/2004
(#ifdef DEBUG)++
In his most recent (as of this writing) blog entry Brad Abrams writes about an idea we've been...
Author: ricom Date: 03/01/2004
Predictable Payment Per Procedure
Just a very quick entry today, motivated by some weekend examinations, contemplations, reflections,...
Author: ricom Date: 03/01/2004
Bad Analysis Worse Than None
Once again I’ll begin by saying that I’m simplifying the below in the interest of not...
Author: ricom Date: 02/17/2004
Some Maxims
No performance context exactly here, just some thoughts I had lying around. Sadly I have no...
Author: ricom Date: 02/12/2004
A like-minded performance person
Paul Vick has some interesting things to say about his experiences in this blog. I think we carry a...
Author: ricom Date: 02/12/2004
Caching Implies Policy
A colleague of mine once said those words in a meeting and they really hit a chord with me. I think...
Author: ricom Date: 01/19/2004
Some Thoughts About Inlining
There’s a few things I’d like to say about inlining in the managed world. I guess I...
Author: ricom Date: 01/14/2004
Reusable code vs. Performant code
I just happened across this quote and it makes me want to rush out and buy that book... “In...
Author: ricom Date: 01/08/2004
Exception Cost: When to throw and when not to
The Cost of Exceptions I wish I could speak intelligently on the exact cost but it's really quite...
Author: ricom Date: 12/19/2003
More StringBuilder advice
I first wrote about this here, but I've since received several requests for more prescriptive advice...
Author: ricom Date: 12/15/2003
Designing for Performance
I wrote this article back in July and it ended up being the basis of this video (scroll to where it...
Author: ricom Date: 12/12/2003
Another bad lock pattern
A while ago I asked Dr. GUI to post an MSDN article about the perils of using lock(typeof(Foo)), you...
Author: ricom Date: 12/06/2003
Mid-life crisis
This particular problem (I call it mid-life-crisis) seems to come up fairly often so I thought I'd...
Author: ricom Date: 12/04/2003
My new home
Well here I am in my new home, feels comfy already. I copied my old postings here for easy...
Author: ricom Date: 12/02/2003
Locality of reference and performance
Eric Gunnerson told me he had some requests for information on how to get good locality of reference...
Author: ricom Date: 12/02/2003
Two things to avoid for better memory usage
OK, I never give rules, because they always have exceptions, and I won't start today, but I'm gonna...
Author: ricom Date: 12/02/2003
Good talk on performance culture
Plugging my own video, I think it's pretty entertaining for a talk a performance, even has some...
Author: ricom Date: 12/02/2003