Best practices for memory allocation and configuration include:
- Do not overcommit memory when sizing, because memory is often not the constraining resource. Overcommitting memory increases the possibility of performance degradation if contention for memory resources occurs (for example, swapping and ballooning of memory). Overcommitted memory can also impact storage performance when swap-files are created.
- Populate memory in units of eight per CPU to yield the highest performance. Dell EMC PowerEdge servers using 3rd Generation AMD EPYC processors have eight memory channels per CPU, which are controlled by eight internal memory controllers, each handling one memory channel with up to two memory DIMMs. To ensure that your environment has the optimal memory configuration, use a balanced configuration where each CPU supports a maximum of 16 DIMMs (or 24 DIMMs for a dual-CPU server). The most effective configuration is 16 DIMMS (8 per processor) with 3rd Generation AMD EPYC processors, but 32 DIMMs have been found to perform acceptably as well. For more information, see the Balanced Memory with 2nd Generation AMD EPYC Processors for PowerEdge Servers White Paper. This document is intended for 2nd Generation AMD EPYC processors, but the fundamental principles apply to 3rd Generation AMD EPYC processors as well.