Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

Recently, I had our server admin tell me that the new servers we'd ordered with 140GB of RAM on them had "too much" ram and that servers started to suffer with more than about 80GB, since that was "the optimal amount". Was he blowing smoke, or is there really a performance problem with more RAM than a certain level? I could see the argument - more for the OS to manage, etc - but is that legitimate, or will the extra breathing room more than make up for the management?

I'm not asking "Will I use it all" (it's a SQL Server cluster with dozens of instances, so I suspect I will, but that's not relevant to my question), but just whether too much can cause problems. I'd always assumed that more is better, but maybe there's a limit to that.

share|improve this question
    
I almost hesitate to say this, but could you ask & relay what his reasons are? It seems so much smoke I find myself curious what made him decide on that specific value. –  Twirrim Mar 26 '11 at 1:06
add comment

5 Answers 5

up vote 14 down vote accepted

There are a few thresholds out there for 'too much', though they're special cases.

In 32-bit land, PAE is what allows you to access memory over the 4GB line. The theoretical max for 32-bit machines is 64GB of RAM, which reflects the extra 4 bits PAE gives memory addresses. 64GB is less than 80GB.

From there we get processor-specific issues. 64-bit processors currently use between 40 and 48 bits internally for addressing memory which gives a maximum memory limit of between 1TB and 256TB. Both way more than 80GB.

Unless he has some clear reasons for why SQL Server can't handle that much memory, the base OS and hardware can do so without breaking a sweat.

share|improve this answer
    
I was going to say: the more someone knows about the subject the more complicated the answer needs to be. There are definitely going to be special cases where this could be true. My first thought about question was that the sysadmin took an assembler class that illustrated how more cache can result in more cache misses (given certain specifics) - but this common teaching is typically misinterpreted. –  Leo Nov 1 '10 at 17:13
add comment

He was blowing smoke - if he'd said 4GB and you were using 32-bit operating systems then he might have had half of an argument but no, 80GB is just a number he's pulled out of the air.

Obviously there are some problems if memory isn't 'bought wisely', for instance larger DIMMs usually cost more than twice the price of the half-size versions (i.e. 16GB DIMMS are more that twice 8GB DIMMS) and you can slow a machine down quite a way by not using the right number/size/layout of memory but it'll still be very fast. Also of course the more memory you have the more there is to break but I'm sure you'll be happy with that system for what you're asking of it.

share|improve this answer
3  
+1 even though I think you are wrong when you said he pulled the number 80GB out of the air. I think he pulled it from elsewhere! :P –  Andrew Barber Nov 1 '10 at 18:37
    
Hahahaha, I SO nearly put that in the original post too :) –  Chopper3 Nov 1 '10 at 18:59
add comment

Take it to an extreme and say you have Petabytes of memory: The system (cpu) is not going to work harder to manage memory mappings. The OS should be smart enough to consume this memory for disk caching, and still have plenty to manage application space (memory and code). Mapping memory in RAM vs virtual space will consume the same amount of CPU cycles.

Ultimately the only thing to suffer with too much memory is wasted energy.

share|improve this answer
    
This was my suspicion, but wanted to see if anybody else though there was something to what he said. Thanks for your input. –  SqlRyan Nov 1 '10 at 16:53
1  
RAM stick can consume around 6 to 20W of energy. Even with 20 sticks and upper bound it's 400W. Hardy a game-changer if we have single CPUs that can pull over 120W. –  Hubert Kario Nov 1 '10 at 19:44
add comment

Assuming the CPU can actually use the RAM (it's not one of the special thresholds that sysadmin1138 mentioned), more RAM can't possibly hurt performance.

However, since you have a limited budget, there may indeed be some "optimal" amount of RAM -- if you spend more money on RAM, then you have less money for CPU(s) and hard drive(s) and IO. If something other than RAM is the bottleneck, then adding more RAM doesn't help performance (although it doesn't hurt performance, either), and it costs money that could instead be applied to opening up the bottleneck.

(I'm neglecting the cost the cost of electricity to power the servers and the cost of electricity to cool the servers -- those costs can have a big effect on "optimizing" hardware selection in a data center).

share|improve this answer
add comment

I would say that the more physical sticks of RAM you have, the more likely one of them will fail.

share|improve this answer
    
But then you would have more redundancy and parallelisation (performance). –  Techboy Mar 22 '11 at 15:17
    
What's that got to do with "optimal" levels of RAM or the specific question? –  Twirrim Mar 26 '11 at 1:02
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.