We have HP DL360 G7 server with one cpu and 16G 12G ram. We plan to add another cpu. So, we need also ram for second cpu. Is there any negative performance impact if we add different size of ram to second cpu? for example 20G ?
Current ram configuration:
The HP ProLiant DL360 G7 server (and other Nehalem-and-newer CPU systems) have a set of memory DIMM population guidelines. Can you share what's currently populated and what your final RAM amount/goal is?
At present, you have 9 available DIMM slots out of the 18 slots on the server. You can only use half of them because the server only has one CPU installed. Installing the additional CPU opens the other 9 slots up for use.
The other critical rules are:
There are also memory channel population tips that affect bus speed. E.g. using 3 to 6 DIMMs per CPU is going to be faster than running with all 18 slots populated. RAM can be seen by both CPUs, but you have to popular on both sides if you have two CPUs.
Reply back with your setup, and we can help optimize...
The system you are refering to does not differentiate between RAM modules for one or the other processor. All RAM is shared between the two processors. In principle there is no impact for adding memory of different size. The only thing you need to keep in mind is that you respect the channels (dual channel= 2 DIMMS, Triple channel is 3 dimms). Also make sure your RAS-CAS latencies and timings are always the same.
EDIT
As stated by David Schwartz:
If you have different amounts of RAM on each CPU, then one direction of the QPI will be more saturated than the other, which will have a negative impact on performance.
I'm afraid that that's not how it works. There is no such thing as per-cpu memory (at least on such servers, supercomputers is a different story). So you don't need to add extra memory to use an extra CPU. Of course you can do it if you find that you're memory constrained as well as cpu constrained.