¿Qué opciones de RAM necesito saber antes de comprar RAM de servidor?

18

Esta es una pregunta canónica propuesta sobre la memoria del servidor.

Tengo que comprar un servidor Dell R420 y hay varias combinaciones (RDIMMS y UDIMMS de 1600 y 1333 MHz) y rendimiento optimizado frente a ECC avanzado con y sin ahorrar. Noté que solo hay DIMMS de 4 gb con UDIMM, por lo que tendré que ir a RDIMMS de 16 GB.

¿Cuáles son estas opciones y qué necesito saber sobre ellas?

Stasik
fuente

Respuestas:

25

La RAM para servidores viene con algunas métricas comunes para especificar su capacidad y capacidad para trabajar en una configuración particular. Para ayudar a confundir esto, hay diferentes nombres para lo que es esencialmente lo mismo, y el nombre "estándar" cambia según el tipo de RAM que esté utilizando.

Capacidad (1 GB, 4 GB, 32 GB, etc.)

Esto es bastante fácil; todos ya deberían estar familiarizados con el concepto de que la RAM viene en diferentes capacidades. El tipo particular de RAM determina cuál puede ser el tamaño máximo de un solo dispositivo, pero eso es irrelevante porque las implementaciones reales limitan la cantidad de RAM que puede admitir un sistema (es decir, consulte la documentación de su sistema para ver qué capacidad admite).

La capacidad de RAM se puede organizar en diferentes configuraciones. Por lo general, solo hay una configuración estándar para RAM de cierto tamaño. Si está comprando RAM ultra barata a través de Internet, tenga en cuenta que puede ser no estándar (especialmente si mencionan la organización) y no es compatible con su servidor.

Velocidad (1600MHz, etc.)

A los fines de esta Respuesta, desea que la velocidad de la RAM coincida con la velocidad máxima del sistema. La RAM que es una o, a veces, dos "velocidades" más rápidas también funcionará, aunque a menor velocidad. De manera similar, la RAM que es una o dos "velocidades" más lentas funcionará, también a menor velocidad.

Protección de integridad (ECC o no ECC)

La ECC es la forma más común de protección de integridad (es decir, asegurarse de que los rayos cósmicos no cambien ningún bit y que ninguna de las ubicaciones de la memoria se dañe). En la mayoría de los sistemas, la RAM debe ser ECC o no ECC, lo que el sistema requiera. Ocasionalmente, esto se denomina memoria de 72 bits (un resto incorrecto de 64 canales de datos de memoria que obtienen 8 bits de ECC junto con el bus de datos).

Cuando la RAM tiene ECC, esa información de protección se puede verificar en varias ocasiones. La protección más básica lee y verifica los datos de ECC solo cuando se lee la RAM en esa ubicación de memoria. Las opciones más avanzadas permiten que el sistema verifique ECC regularmente. Con mayor frecuencia he visto esto llamado "borrado de memoria"; funciona de manera muy parecida a la limpieza de la matriz de discos; y, al igual que la limpieza de la matriz de discos, debería habilitarla a menos que haya una buena razón para deshabilitarla.

ECC es uno de los pasos para reducir el impacto del error Row Hammer .

Capacidad eléctrica del bus (sin búfer o registrada)

No somos ingenieros eléctricos, por lo que todo lo que necesita saber es que la memoria RAM registrada o registrada permite más RAM en un sistema que sin ella. Al igual que ECC, esto es algo que debe ser compatible con el sistema. A diferencia de ECC, muchos servidores nuevos admiten RAM sin búfer / sin registrar y RAM con búfer / registrado. Los servidores más antiguos tendían a admitir solo uno u otro. Los registros son un tipo de búfer, pero los términos se usan indistintamente cuando se aplican a la RAM. Nunca he visto un sistema que pueda mezclar Sin memoria intermedia y Registrado al mismo tiempo.

Cuando vea UDIMM, la "U" es para "Sin búfer". La "R" en RDIMM es "Registrada".

  • Rangos

    La RAM registrada tiene características de "uso" eléctrico bien definidas medidas en "rangos". Cada canal RAM (o bus) en un sistema puede admitir tantos rangos a cada velocidad que admite. Por lo general, los sistemas se clasifican a dos velocidades (es decir, el canal funciona a una velocidad X normalmente con rangos de hasta A; pero la velocidad de Y si es superior a eso, y solo son posibles rangos de hasta B).

    Hay RAM disponible con la misma capacidad y velocidad, pero ocupando diferentes números de rangos. Normalmente, cuanto más capacidad, más rangos ocupa un módulo. Los módulos de bajo voltaje ocupan menos rangos (según las especificaciones del módulo).

Notas de pie

  • Hay una variedad de opciones de configuración no relacionadas con la RAM física que necesita comprar para su servidor. Estos incluyen duplicar la RAM (al igual que RAID1, pero para RAM), ahorrar (literalmente, RAM de repuesto que, si una falla, el repuesto la reemplaza), el tiempo y las optimizaciones relacionadas.

  • Los servidores modernos suelen tener los controladores de memoria integrados en la CPU en lugar de un chip North Bridge separado. Esto significa que los sistemas que admiten múltiples CPU deben tener el zócalo de CPU que corresponde a una ranura de memoria para poder usar esa ranura. Del mismo modo, algunas CPU requieren que haya memoria ocupada en sus ranuras para que el sistema funcione. Consulte la documentación del sistema para más detalles.

  • Los servidores modernos suelen tener más de un canal de memoria. Estos canales funcionan principalmente de forma independiente, lo que permitirá un mayor ancho de banda de memoria en escenarios de uso intensivo de memoria. En general, debe planear distribuir la memoria a través de todos los canales en todas las CPU pobladas de la manera más uniforme posible para garantizar el mejor rendimiento. 

Chris S
fuente
55
Para completar, puede mencionar la memoria de doble o triple canal y los sistemas de doble CPU donde hay bancos dedicados a cada CPU.
JamesRyan
2

Al actualizar la memoria de un servidor existente, probablemente debería comenzar confirmando qué módulos de memoria ha instalado ahora y qué módulos adicionales / nuevos / de reemplazo son realmente compatibles con el proveedor (placa principal) y el BIOS.

Para cumplir con la garantía y sus contratos de soporte de hardware, es posible que deba comprar piezas de repuesto genuinas del proveedor, en lugar de utilizar módulos de memoria posteriores a la comercialización. La mayoría de los proveedores enumeran piezas de repuesto certificadas para su hardware y la mayoría de los fabricantes de memoria también tienen selectores de productos que lo dirigen a productos que deberían funcionar con su servidor.

Un error común es que los servidores más antiguos no admiten nuevos módulos de memoria de mayor capacidad, que en función de todas sus otras propiedades encajan y se espera que funcionen.

El enfoque más común es llenar los bancos de memoria actualmente vacíos, en lugar de actualizar a módulos de memoria de mayor tamaño. NB No puede llenar bancos de memoria asignados a zócalos de CPU vacíos.

Descubriendo lo que tienes ahora

Algunas de las consolas de administración remota, como la OIT de HP, mostrarán la configuración de memoria actual.

El dmidecode -t memorycomando de Linux mostrará la cantidad máxima de memoria que admite la placa principal, así como información sobre qué memoria está presente en los bancos de memoria poblados y cuáles aún están vacíos.

Para sistemas Windows, WMI debería proporcionar información similar con wmic MemoryChip.

Mezcla de módulos de memoria de diferentes tamaños.

Aunque siempre se siente algo mal, no he visto ninguna razón convincente para que sea malo per se. El manual del propietario confirma que se trata de una configuración compatible, siempre que se cumplan todas las reglas relativas a la memoria.

En configuraciones de CPU múltiples, necesita una configuración de memoria equilibrada donde cada CPU tenga la misma cantidad de memoria en los mismos canales de memoria: es decir, en una configuración de 2 CPU puede tener 2 GB en la ranura A1 y 4 GB en la ranura A2 siempre que sea reflejado en la segunda CPU, 2 GB en la ranura B1 y 4 Gb en la ranura B2.

Mezcla de módulos de memoria de diferentes velocidades.

Puede mezclar módulos de diferentes velocidades siempre que la placa principal admita esas velocidades. Se supone que el BIOS debe encontrar el mínimo común denominador y regular que todos los módulos funcionen a la misma velocidad. Como la memoria más rápida suele ser más cara, esto parece una pequeña pérdida de dinero, aunque le permite canibalizar algunos sistemas más antiguos para actualizar otros.

HBruijn
fuente