Physical RAM

Hi,

I have a server (BL460c) with 32G of physical RAM.

It currently only uses approx 5% its capacity but will use more (not sure how much more) pending the launch of further applications.

If I need to build another node of similar functionality should I consider downgrading the physical memory or leaving it as a scalibility option.

Are there any performance issues directly related to having too much physical memory?

R,
D.

An active RHEL system should be using almost all of the free physical memory for cache and buffers. Once you start doing application I/O, you'll see the memory get "used" by the OS quickly. Remember, the memory "used" for cache/buffers is actually free and the kernel can reclaim it very quickly if memory demand for processes increases. The "free" command shows you the difference between "used" memory with and without including the cache/buffers.

Older versions of Linux did have a penalty for very large memory because the algorithms used to manage memory pages were primitive. Many of those problems were addressed in later RHEL 4 releases and by the time we got to RHEL 5 and 6, those issues have been completely resolved. Many of our servers run 256 or 512GB of RAM. For a BL460c with maybe 8 cores, 32GB seems to me to be about right. If it's a BL460cG6 with 16 cores, 32GB seems small. It all depends on what applications or databases you're running on it.

Here's an example from a mid range system with 48 cores:

# free -g
           total       used       free     shared    buffers     cached
Mem:           251        250          0          0          0        226
-/+ buffers/cache:         24        226
Swap:          294         20        273
 

At first glance it looks like this system has no free memory. But the actual memory used by processes is actually only 24GB - the other 226GB is cache/buffers.

With very large amounts of RAM on certain hardware you can encounter NUMA issues, but as a general rule, you can never have too much memory. RHEL will find a way to use it.

1 Like

Any penalty usually associated with having more memory is offset by having... more memory. Memory is faster than disk. This saves swapping operations.

The things to look out for are not as much with the memory, but the address tables. If your application supports hugepages then you might want to enable them for a sub section of your RAM to lower the footprint of your memory table.

Also,

This is more of an issue on intel systems than AMD, but you should make sure that your memory is aligned more properly. With intel systems, if you were to increase the memory you are more likely to run into issues where the speed of the RAM decreases (clock speed) or that you run memory in non-optimal channels (three channel vs dual channel).

1 Like