On the Sixth day of Christmas my Server Admin gave to me… Six Gb of RAM
RAM is Just Giving it Away on the Corner of Performance Boulevard and Buffer Lane
No, RAM is not a whore, but memory is the cheapest component in the server that can be augmented to instantly enhance performance within a SQL instance. More RAM means less trips to disk for rows when dealing with large sets of data needed to satisfy user requests. More RAM means a larger plan cache which can lead to more plan re-use.
Two GB Recommended RAM? I Feel Dirty and Need a Shower
I cringe when I see specification from independent software vendors (ISVs) that state a minimum or a recommended two GB of RAM for a production SQL Server. Allowing for two – three GB of RAM for non-SQL processes (read O/S and supporting applications like anti-virus software, backup applications, and so-forth.) Even four GB runs an unexcusable risk that you’re going to have to crawl back to the Server Administration Team and solicit for more RAM. Save yourself the humiliation and degradation and get the additional two GB from the start. The project’s budget should be able to absorb the couple-hundred dollars more in cost far easier than your Ego and reputation will.
Believe it or Not I do Have Minimum Standards
Bare minimum in my production environment is six GB. I set MIN SERVER MEMORY to one GB on these base instances and a corresponding four GB MAX SERVER MEMORY with the understanding that I may need to tweak the standards a bit if I see free memory dip because of that pesky lack of a cap on file caching which was supposedly fixed in Windows 2008R2 but I’ve recently been told is not the case.
Oh, About that Dynamic Caching Issue
I did run across a TechNet forum recently that pointed towards to products created by Mark Russinovich and Bryce Cogswell developed though that do shine a light on issues arising out the the dynamic cache cap issue though. Check them out here: