This is an old revision of the document!
El acceso al cluster constá de dos partes:
1. Acceso al VPN de EIE, este acceso se solicita con Marco Villalta 2. Acceso al Cluster Tara, este acceso se solicita con PRIS JAM
Una vez obtenidos los accesos necesarios, para ingresar al clúster se ejecuta:
cd /etc/openvpn sudo openvpn client.conf #En una nueva consola ssh -l <user name> 192.168.18.251 # Donde 192.168.18.251 es la IP del cluster Tara
Momentáneamente se cuenta con la página de monitoreo http://192.168.18.244/ganglia/ donde se puede monitorear uso de las CPU, GPU, RAM y el estado de temperatura
Los modulos de ambiente proveen una forma sencilla de tener varias versiones de un mismo programa o en general definir variables de ambiente de forma sencilla.
Algunos comandos útiles son:
# Desplegar la ayuda del comando module module help # Desplegar modulos de ambiente disponibles module avail # Cargar un modulo de ambiente module add <nombre del modulo> # Remover un modulo de ambiente module rm <nombre del modulo> # Desplegar información acerca de un modulo específico module display <nombre del modulo> # Desplegar modulos de ambiente activos module list
Algunos ejemplos:
module add cuda # Cargar el CUDA toolkit module add compilers/gcc/9.3.0 # Cargar GCC 9.3.0 module add scientific/autodock-vina # Cargar autodock vina
Para cargar modulos de ambiente en scripts de bash ese necesario especificar la opción -i, de lo contrario se va a provocar un error. Forma correcta:
#!/bin/bash -i ...
Slurm es un manejador de recursos utilizando en super computadores y clusters alrededor del mundo. El modelo de ejecución está basado en colas de ejecución (particiones), donde el usuario le pide a SLURM tiempo de computo y SLURM determina el mejor nodo del cluster para correr la tarea basado en los requirimientos del usuario.
No todos tienen acceso a todas las particiones del cluster, para saber cuales particiones están disponnibles use el comando sinfo, por ejemplo:
[user@tara-master ~]$ sinfo --long Sun Jun 28 12:14:10 2020 PARTITION AVAIL TIMELIMIT JOB_SIZE ROOT OVERSUBS GROUPS NODES STATE NODELIST tara-default* up 5:00 1-2 no YES:4 all 4 idle cpu-[0-3] tara-5m up 5:00 1-2 no YES:4 all 4 idle cpu-[0-3] tara-30m up 30:00 1-2 no YES:4 all 4 idle cpu-[0-3] tara-1H up 1:00:00 1-2 no YES:4 all 4 idle cpu-[0-3] tara-1H-FC up 1:00:00 1-infinite no YES:4 tara-compu 4 idle cpu-[0-3] tara-2H-FC up 2:00:00 1-infinite no YES:4 tara-compu 4 idle cpu-[0-3] tara-4H-FC up 4:00:00 1-infinite no YES:4 tara-compu 4 idle cpu-[0-3] tara-8H-FC up 8:00:00 1-infinite no YES:4 tara-compu 4 idle cpu-[0-3] tara-1H-HPC up 1:00:00 1-infinite no YES:4 tara-compu 4 idle cpu-[0-3] tara-2H-HPC up 2:00:00 1-infinite no YES:4 tara-compu 4 idle cpu-[0-3] tara-4H-HPC up 4:00:00 1-infinite no NO tara-compu 4 idle cpu-[0-3] tara-8H-HPC up 8:00:00 1-infinite no NO tara-compu 4 idle cpu-[0-3] tara-HPC up infinite 1-infinite no YES:4 tara-hpc,t 4 idle cpu-[0-3] tara-HPC-exclusive up infinite 1-infinite no NO tara-hpc,t 4 idle cpu-[0-3]
Para ver el status de los trabajos use el comando squeue ejemplo:
squeue -a
Para cancelar trabajos use el comando scancel, ejemplo:
scancel <id del trabajo>
Existen 3 comandos principales para solicitar recursos a SLURM: 1. sbatch Es utilizando principalmente para trabajos batch o heterogéneos 2. srun Es utilizado principalmente para trabajos homogéneos 3. salloc Es utilizado principalmente para trabajos interactivos heterogéneos
Ejemplos:
# Lanza un trabajo de sbatch sbatch <sbtach script> # Lanza un hello-world en MPI con 2 procesos por nodo, 4 nodos y en la cola tara-HPC srun -N 4 -p tara-HPC --ntasks-per-node 2 mpi-hello-world
Algunos recursos adicionales sobre el uso de SLURM: