Serafín fue refrescada en hardware y software

Una falla de fabricación de los chips de RAM de Serafín derivó en un recambio por parte del fabricante de más del 70% de la memoria. En estos 43 nodos la memoria pasó de 128 GiB a 256 GiB. Se aprovechó la parada total para hacer una actualización de software completa.

«Uncorrectable ECC»
En febrero de 2022 empezamos a tener reportes de errores simples de RAM (corregibles) y algunos dobles (reinicio). Luego de descartar problemas en la calidad del suministro eléctrico, y comprobar que no había grandes fuentes de RF que pudieran meter ruido, empezamos a realizar recambio de los módulos que iban fallando, ya que no había correlación espacial ni temporal alguna de las fallas. Los errores aparecen de esta forma en la BMC, donde todos los que son errores incorregibles implica un reinicio del nodo.

 

 

 6 | 03/23/2022 | 10:22:35 | Memory | Uncorrectable ECC (@DIMMG1(CPU1)) | Asserted
 7 | 04/05/2022 | 14:46:37 | Memory | Uncorrectable ECC (@DIMMG1(CPU1)) | Asserted
 8 | 04/05/2022 | 16:24:33 | Memory | Uncorrectable ECC (@DIMMG1(CPU1)) | Asserted
 9 | 04/14/2022 | 17:52:50 | Memory | Correctable ECC (@DIMMH1(CPU1)) | Asserted
 a | 04/14/2022 | 17:52:50 | Memory | Uncorrectable ECC (@DIMMG1(CPU1)) | Asserted
 b | 04/14/2022 | 17:52:50 | Memory | Correctable ECC (@DIMMF1(CPU2)) | Asserted
 c | 04/21/2022 | 00:37:56 | Memory | Uncorrectable ECC (@DIMMG1(CPU1)) | Asserted
 d | 04/21/2022 | 14:19:42 | Memory | Uncorrectable ECC (@DIMMG1(CPU1)) | Asserted
 e | 04/22/2022 | 14:34:10 | Memory | Uncorrectable ECC (@DIMMG1(CPU1)) | Asserted
 f | 05/17/2022 | 12:31:57 | Memory | Uncorrectable ECC (@DIMMG1(CPU1)) | Asserted
12 | 05/23/2022 | 13:12:16 | Memory | Uncorrectable ECC (@DIMMG1(CPU1)) | Asserted
13 | 05/28/2022 | 00:48:29 | Memory | Correctable ECC (@DIMMD1(CPU1)) | Asserted
14 | 05/28/2022 | 00:48:29 | Memory | Uncorrectable ECC (@DIMMG1(CPU1)) | Asserted

En octubre de 2022 enviamos 30 módulos 8GB 1Rx8 PC4-3200AA-RD1-12. En marzo de 2023 enviamos 65 módulos más y sin prisa, pero sin pausa, la tasa de fallo iba en aumento. En mayo de 2023 nos avisan desde Supermicro que un lote de memoria con chips Hynix tenía una error de difusión que acumulaba.

El 28 de junio, Rodrigo Díaz el FAE de Supermicro nos decía: «como resultado del Failure Analysis hecho en los DIMMs que fallaron anteriormente y tras negociaciones que sostuvimos con el proveedor la acción inmediata que tomaremos es reemplazar 699 DIMMs de 8 GiB del total de 960 que tienen actualmente por 699 DIMMs de 16 GiB. El problema de manufactura durante el Photoresist Strip Process, genera una falla en el contacto bajo el M0C, este fallo hace que durante los ciclos de uso de la memoria las variaciones normales de temperaturas, sin necesidad de llegar a picos térmicos, se pierda cada vez más el contacto entre los componentes, lo que en un plazo indeterminado conduce a una completa falta de contacto y a su vez dará errores Multi Bit«.

El recambio
Con las 688 memorias para los 43 nodos y 11 módulos más para reemplazo en la mano, el viernes 4 de agosto se empezaron a drenar las colas de trabajos y el lunes con la computadora ya vacía, los 3 CPA CONICET que trabajan en el CCAD movieron los 960 módulos de RAM DDR4 que tiene Serafín, cambiaron las 60 pilas de las placas madres y sopletearon todos los nodos para eliminar polvo de yeso.

Carlos Bederián, Alejandro Silva y Marcos Mazzini entraron al UNC Data Center temprano a la mañana y salieron cuando el sol ya no estaba. Algo que varios estimábamos que iba a tomar tres días como mínimo, se hizo en uno solo.

A partir del martes empezó un trabajo aun más largo y preciso. Había dos necesidades urgentes de actualización, una cambiar el kernel por ZenBleed (24 julio 2023) y la otra por la salida de la última versión del compilador AOCC, (4 agosto 2023). También era necesario actualizar el software de las 3 computadoras que componen el BeeGFS de Serafín. Cambiar el kernel implicó pasar a Rocky 8.8, cambiar el compilador implicó rehacer todo el stack de software. En definitiva se reinstaló todo Serafín de cero.

Luego de 10 días de parada, el resumen fue:
  • Subir de 128 GiB a 256 GiB de RAM los primeros 43 nodos.
  • Actualizar el sistema operativo de la cabecera y nodos de cómputo a Rocky@8.8.
  • Actualizar los compiladores las versiones más nuevas disponibles: aocc@4.1.0, gcc@12.3.0.
  • Actualizar las versiones de las aplicaciones instaladas: gromacs@2023.2, lammps@20230802, nwchem@7.2.0, quantum-espresso@7.2.
  • Actualizar el software del sistema de almacenamiento distribuído del cluster (BeeGFS).
La máquina recuperó la confiabilidad y podrá producir más horas/core por mes. Nos queda ir a dejar las pilas usadas a algún punto de acopio.

por Nicolás Wolovick
Director del CCAD-UNC