Unimore HPC Wiki

ARIES · Architettura

Architettura del cluster HPC

Panoramica

Il cluster HPC è composto da 61 nodi di calcolo ed è gestito tramite il workload manager Slurm 23.02.3. A questi si aggiungono 3 nodi di login (fe01, fe02 e fe03) e 1 nodo di management, accessibile esclusivamente agli amministratori.

I 61 nodi di calcolo sono organizzati come segue:

La comunicazione tra i nodi avviene tramite rete InfiniBand a 100 Gb/s. Lo storage condiviso è basato su BeeGFS.

Sistema operativo

I nodi utilizzano Rocky Linux 8.7 (Green Obsidian), distribuzione compatibile con l'ecosistema RHEL/CentOS/Fedora.

NAME="Rocky Linux"
VERSION="8.7 (Green Obsidian)"
ID="rocky"
ID_LIKE="rhel centos fedora"
VERSION_ID="8.7"

Nodi di calcolo CPU

La configurazione CPU indicata per i nodi è basata su 2 socket Intel Xeon Gold 5320 @ 2.20 GHz.

Caratteristiche principali

L'output lscpu di riferimento è:

Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
CPU(s):              52
On-line CPU(s) list: 0-51
Thread(s) per core:  1
Core(s) per socket:  26
Socket(s):           2
NUMA node(s):        2
Vendor ID:           GenuineIntel
BIOS Vendor ID:      Intel(R) Corporation
CPU family:          6
Model:               106
Model name:          Intel(R) Xeon(R) Gold 5320 CPU @ 2.20GHz
BIOS Model name:     Intel(R) Xeon(R) Gold 5320 CPU @ 2.20GHz

Topologia CPU e NUMA

Ogni nodo dispone di due socket fisici:

Nodo CPU
|
+-- Socket 0 - Intel Xeon Gold 5320
|   +-- 26 core fisici
|   +-- NUMA node 0
|
+-- Socket 1 - Intel Xeon Gold 5320
    +-- 26 core fisici
    +-- NUMA node 1

Poiché è presente 1 thread per core, i 52 core fisici corrispondono a 52 CPU logiche visibili al sistema operativo.

Memoria RAM

La memoria RAM è distribuita nel modo seguente:

I nodi fnode e il nodo GPU permettono di eseguire workload con requisiti di memoria superiori rispetto ai cnode.

Nodo GPU

Il nodo gnode01, dotato di 1 TB di RAM, è equipaggiato con:

GPU installate

GPU Node
|
+-- GPU 0: NVIDIA A100 80 GB
+-- GPU 1: NVIDIA A100 80 GB
+-- GPU 2: NVIDIA A100 80 GB
+-- GPU 3: NVIDIA A100 80 GB

Ogni GPU dispone di 81920 MiB di memoria secondo nvidia-smi.

NVIDIA MIG

Dall'output fornito, lo stato MIG non è uniforme sulle quattro GPU:

Per le GPU 2 e 3 l'output mostra quattro dispositivi MIG per GPU, ciascuno con circa 19968 MiB di memoria e 14 SM.

GPU 2 - NVIDIA A100 80 GB - MIG Enabled
+-- MIG device 0 - 19968 MiB
+-- MIG device 1 - 19968 MiB
+-- MIG device 2 - 19968 MiB
+-- MIG device 3 - 19968 MiB

GPU 3 - NVIDIA A100 80 GB - MIG Enabled
+-- MIG device 0 - 19968 MiB
+-- MIG device 1 - 19968 MiB
+-- MIG device 2 - 19968 MiB
+-- MIG device 3 - 19968 MiB

In totale, nell'output riportato sono quindi presenti 8 dispositivi MIG configurati sulle GPU 2 e 3.

Rete di interconnessione

La connessione ad alte prestazioni tra i nodi è basata su InfiniBand. L'interfaccia rilevata è mlx5_0, con collegamento attivo a 100 Gb/s.

Caratteristiche principali

Output ibstat di riferimento:

CA 'mlx5_0'
    CA type: MT4123
    Number of ports: 1
    Firmware version: 20.35.3006
    Hardware version: 0
    Node GUID: 0xe8ebd303004bb362
    System image GUID: 0xe8ebd303004bb362
    Port 1:
        State: Active
        Physical state: LinkUp
        Rate: 100
        Base lid: 16
        LMC: 0
        SM lid: 1
        Capability mask: 0xa651e848
        Port GUID: 0xe8ebd303004bb362
        Link layer: InfiniBand

Nodi di accesso e management

L'infrastruttura comprende tre nodi di login:

I nodi di login costituiscono il livello di accesso al cluster. È inoltre presente un nodo di management, riservato agli amministratori.

Storage condiviso BeeGFS

Lo storage condiviso del cluster è basato su BeeGFS Riepilogo della capacità:

Gestione delle risorse con Slurm

Il cluster utilizza Slurm 23.02.3 come workload manager.

Slurm costituisce il livello di gestione e allocazione delle risorse di calcolo del cluster. Le risorse disponibili comprendono:

Schema logico dell'architettura

Utenti
  |
  +-- fe01 / fe02 / fe03                Nodi di login
          |
          +-- Slurm 23.02.3             Gestione dei workload
                  |
                  +-- 48 cnode          512 GB RAM per nodo
                  |
                  +-- 12 fnode          1 TB RAM per nodo
                  |
                  +-- gnode01           1 TB RAM
                  |      +-- 4 x NVIDIA A100 80 GB
                  |      +-- MIG attivo su GPU 2 e GPU 3
                  |
                  +-- Rete InfiniBand   100 Gb/s
                  |
                  +-- BeeGFS            /mnt/beegfs, 578 TB

Nodo di management: accesso riservato agli amministratori

Riepilogo tecnico

Componente Configurazione
Nodi di calcolo 61
cnode 48 nodi con 512 GB di RAM
fnode 12 nodi con 1 TB di RAM
Nodo GPU gnode01, 1 TB di RAM
Nodi di login fe01, fe02, fe03
Nodo di management 1, riservato agli amministratori
Sistema operativo Rocky Linux 8.7 (Green Obsidian)
Architettura CPU x86_64
Processore Intel Xeon Gold 5320 @ 2.20 GHz
Socket per nodo 2
Core per socket 26
Core per nodo 52
Thread per core 1
NUMA node 2
GPU 4 × NVIDIA A100 80 GB
Driver NVIDIA 525.60.13
CUDA riportata da NVIDIA-SMI 12.0
MIG Disabled GPU 0-1; Enabled GPU 2-3 nell'output fornito
MIG device mostrati 8 totali, 4 per GPU 2 e GPU 3
Interconnessione InfiniBand 100 Gb/s, CA mlx5_0
Storage condiviso BeeGFS montato su /mnt/beegfs
Capacità BeeGFS 578 TB totali, 363 TB usati, 216 TB disponibili, 63% utilizzato
Workload manager Slurm 23.02.3