Accions

Manual Cluster HPC UVic-UCC

De URecursos

Introducció i Recursos del Clúster

Aquest manual està dissenyat per ajudar els nous usuaris del clúster de càlcul de la UVic-UCC. El seu objectiu és proporcionar les eines necessàries per començar a utilitzar el clúster de manera eficient. Es recomana tenir coneixements bàsics del sistema Unix per poder treballar còmodament.

Què és un clúster de càlcul?

Un clúster de càlcul és un conjunt d'ordinadors que treballen conjuntament per processar tasques de manera eficient. Un dels ordinadors, anomenat node mestre o node d'inici de sessió, s'encarrega d'assignar els programes (anomenats jobs) als altres ordinadors mitjançant un gestor de cues (scheduler).

Representació esquemàtica d'un clúster de càlcul.

Recursos del Clúster

  • 112 CPUs: Distribuïdes en diferents nodes per optimitzar el càlcul paral·lel.
  • 515 GB de RAM: Repartida segons les necessitats dels usuaris.
  • 2 GPUs: Disponibles per a càlculs d'intel·ligència artificial.
  • 8 TB d'emmagatzematge: Per guardar dades i resultats.

Sistema de Gestió de Jobs: Slurm

Un cop dins del clúster, utilitzem el sistema Slurm Management. Podeu trobar la documentació oficial en aquest enllaç: Documentació de Slurm. Per a més informació sobre el nostre cluster de càlcul, veieu la presentació Presentació clúster de càlcul UVic-UCC (Last update 15/01/2025).

Administradors del clúster

  • Jordi Sala Serra: Tècnic de l'àrea TIC de la UVic-UCC (jordi.sala@uvic.cat).
  • Roger Casals Franch: Responsable d'usuaris i programari de recerca, INVESTIGO a l'IRIS-CC i doctorand al SGR BI² (roger.casals@uvic.cat).

Connectar-se via VPN i SSH

1. Connexió VPN

Primer de tot, per tal de connectar-vos al cluster, heu d'obrir el túnel via VPN. Us heu de descarregar la versió de Forticlient que sigui compatible amb el vostre sistema operatiu. Seguidament un cop us hagueu descarregat FortiClient, heu d'anar a l'apartat "Remote Access" i configurar de la següent manera.

  • Teams Haureu estat acceptat dins d'un grup d'Users, a l'apartat Bloc de notes de l'HPC trobareu com connectar-vos via VPN.

2. Connexió SSH

Un cop hagueu activat la connexió via VPN. Per connectar-vos al clúster, executeu la següent comanda al terminal:

ssh -l nom.cognom@uvic.cat lavandula.uvic.local

Introduïu la contrasenya del vostre Campus Virtual quan us la demani. Tingueu en compte que no podeu treballar de manera interactiva al clúster; és obligatori enviar jobs mitjançant Slurm.

Guia Bàsica per Enviar Jobs

1. Crear un Fitxer de Treball (Script sbatch)

Es recomana mantenir una estructura clara per als vostres directoris:

Per a tal de crear directoris al vostre "home", heu d'utilitzar

mkdir

  • data/: Conté les dades d'entrada.
  • results/: Guarda els resultats del càlcul.
  • scripts/: Inclou els scripts de treball (.sh).

Heu de crear un fitxer de 0, que contingui les comandes #SBATCH i canviar-les segons els requeriments.

Exemple de Script Bàsic:

#!/bin/bash

#SBATCH --job-name=nom_job          # Nom del job

#SBATCH --output=sortida.txt        # Fitxer de sortida

#SBATCH --error=error.txt           # Fitxer d’errors

#SBATCH --time=01:00:00             # Temps màxim (hh:mm:ss)

#SBATCH --cpus-per-task=4           # Nombre de CPUs per tasca

#SBATCH --mem=4GB                   # Memòria assignada

python script.py                    # Execució del vostre codi

Rscript script.R                    # En cas que fos R

Comentaris:

--job-name: Assigna un nom al vostre job per identificar-lo fàcilment.

--output: Especifica el fitxer on es guardarà la sortida del job.

--error: Indica el fitxer on es guardaran els errors.

--time: Defineix el temps màxim d'execució del job.

--cpus-per-task: Estableix el nombre de CPUs assignades al job.

--mem: Defineix la memòria necessària per al job.

Comandaments de Slurm

2. Enviar el Job a Slurm

Per enviar el job, utilitzeu:

sbatch job_script.sh

Això us retornarà un Job ID (per exemple, 12345) que us servirà per fer seguiment del job.

3. Consultar l’Estat dels Vostres Jobs

Per veure l’estat dels vostres jobs (si estan en cua o en execució), utilitzeu:

squeue

Estats Comuns:

  • PD (PENDING): El job està en cua.
  • R (RUNNING): El job està en execució.

4. Cancel·lar un Job

Si necessiteu cancel·lar un job, utilitzeu:

scancel 12345

5. Comprovar els Recursos Disponibles

Per veure quins recursos (nodes i particions) estan disponibles, utilitzeu:

sinfo

Comandes bàsiques de SLURM

1. Consultar l’estat del clúster

  • sinfo → Mostra l’estat dels nodes i particions disponibles.
  • squeue → Mostra tots els treballs en cua.
  • squeue -u $USER → Mostra només els teus treballs en cua.
  • squeue -j → Consulta l'estat d'un treball específic.

2. Enviament de treballs

  • sbatch script.sh → Envia un treball al clúster mitjançant un script.

3. Gestió de treballs

  • scancel → Cancel·la un treball específic.
  • scancel -u $USER → Cancel·la tots els teus treballs en execució.
  • scontrol show job → Mostra informació detallada d’un treball.
  • seff job → Mostra l'informe d'eficiència que s'envia per correu.

4. Transferència de fitxers

Per enviar i rebre fitxers entre el vostre ordinador i el clúster, utilitzeu la comanda scp. Si voleu copiar tot un directori, podeu utilitzar scp -r. IMPORTANT: La transferència s’ha de fer sempre des del vostre ordinador.

Exemples:

  • Copiar un fitxer des del vostre ordinador al clúster:
    • scp fitxer.txt NIU@uvic.local@lavandula:CARPETA/CARPETA
  • Copiar un fitxer del clúster al vostre ordinador:
    • scp NIU@uvic.local@lavandula:CARPETA/CARPETA/fitxer.txt .

(El punt final indica que es copiarà al directori actual.)