Clúster Casper disponible

Tras meses de trabajo, hemos desplegado completamente el nuevo clúster Casper, que sustituye a Alice. Este nuevo clúster incorpora mejoras significativas tanto de hardware como de software. Por un lado, hemos actualizado el nodo de login (front-end) a un nuevo servidor de altas prestaciones con procesadores de última generación, sustituyendo el anterior que databa de 2008. Todo el sistema de almacenamiento se ha reconstruido con cuatro servidores dedicados (dos de metadatos y dos de almacenamiento) basados en BeeGFS, sobre una red 10 GbE que sustituye a la anterior red de 1 Gb. Se han instalado también dos nuevas redes de comunicación entre nodos para permitir el uso tanto diario como de administración en redes independientes. Hemos actualizado también el hardware de todos los nodos para homogeneizar la infraestructura, incorporando discos NVMe de alta velocidad para el sistema operativo, un sistema de doble scratch SSD y HDD para trabajos con baja o alta demanda de escritura, y al menos 128 GB de RAM en todos los nodos.

En el apartado de software, hemos sustituido toda la infraestructura de Rocks Cluster (basada en Centos 7.4, que databa de 2017) por Rocky Linux, que cuenta con un ciclo de vida hasta 2029. Se ha reestructurado el sistema de gestión del clúster por Warewulf y se ha sustituido el gestor de colas por OpenPBS, integrado todo en la suite OpenHPC. Se han instalado también versiones estables actualizadas tanto de compiladores (libres y propietarios) como del software de investigación disponible.

Los nodos de cálculos existentes en Alice se han migrado satisfactoriamente a Casper, manteniendo las colas de trabajo alpha, beta, gamma, epsilon y dseta. A nivel de administración, la numeración de los nodos se ha modificado para facilitar la identificación nodo-cola y permitir futuras ampliaciones con comodidad.

Las pruebas de rendimiento muestran mejoras de hasta un 40% respecto de Alice, por lo que confiamos en que estas actualizaciones sean de utilidad para todos los investigadores del CCAR.

Paralelización con R/4.3.1

El clúster ALICE tiene instalada la versión 4.3.1 de R, a disposición de todos sus usuarios. Son varios los paquetes instalados en la suite de R, disponibles utilizando el comando:

> library()

La versión instalada de R tiene soporte nativo para paralelización, tanto en el uso de álgebra lineal a través de BLAS (que utiliza las librerías MKL de Intel Oneapi) como OpenMP. El uso de rutinas de paralelización está ampliamente documentada en la documentacion de R: CRAN Task View: High-Performance and Parallel Computing with R.

Para hacer un uso eficiente de la paralelización de R, es necesario tomar medidas adicionales que no interfieran con el resto de usuarios. Los siguientes códigos de buenas prácticas permiten hacer un buen uso de R en paralelo:

  • Evitar el uso de la librería ‘parallel’, y usar en su lugar la librería ‘parallelly‘, que tiene un soporte más avanzado en las capacidades de paralelización.
  • Sustituir el uso de la función detectCores() por availableCores(), que toma el número de hilos disponibles a partir de la información del job que proporciona el gestor de colas.
  • Usar la librería RhpcBLASctl para especificar el número de hilos de computación, tanto para OpenMP como para BLAS. Esto puede conseguirse con las siguientes instrucciones:
 library('RhpcBLASctl')
 blas_set_num_threads(NCORES)
 omp_set_num_threads(NCORES)

donde NCORES es el número de hilos reservados en el trabajo.

Confiamos en que estas medidas sean útiles para mejorar la eficiencia de los cálculos en R. En cualquiera de los casos, siempre es recomendable hacer un pequeño benchmark para comprobar la combinación más eficiente de hilos que respete, en todo caso, el máximo de la reserva realizada.

Nuevos nodos de cálculo en ALICE

Gracias a los acuerdos de servicio firmados, recientemente hemos incorporado al CCAR dos nuevos nodos de cálculo con procesadores Intel Xeon Platinum de 3ª generación. En total, se han añadido 256 nuevos hilos de computación disponibles en ALICE, sumando un total de 1.300 hilos. Cada uno de estos nodos dispone de 192 GB de RAM, y discos SSD de 2 TB para el scratch de datos.

Nuevos procesadores Intel Xeon Platinum en la cola épsilon de Alice.