Conexión al cluster
La forma de conectarse a los equipos es a través de conexiones remotas estas se logran desde un equipo con linux o desde windows con alguno de los siguientes programas.
Conexión Remota
Descargar PuTTY Sitio Web Oficial | Sitio Oficial |
Descargar WinSCP 5.7.7 Sitio Web Oficial | Sitio Oficial |
Descargar VNC Viewer 6.9.0 Sitio Web Oficial | Sitio Oficial |
Desde una Pc con Linux
La conexión se hace via ssh mediante el siguiente comando:
ssh -l nombre_usuario ocotillo.acarus.uson.mx
Si es la primera vez que se conecta al clúster le pedirá que autorice la conexión preguntándole si quiere continuar, a lo cual deberá contestar ‘yes’. Después de esto, le pedirá su password y listo, tenemos una sesión en el cluster.
Desde una Pc con Windows
Hacer la conexión desde windows no es tan sencillo como desde Linux, para esto es necesario descargar una herramienta que nos permita hacer conexiones via ssh. Para ello utilizaremos ‘putty’, una herramienta sencilla y robusta a la vez.
Una vez que lo hallamos descargado lo ejecutamos y nos aparecerá la siguiente ventana, en la cual introduciremos el nombre del cluster (ocotillo.acarus.uson.mx) o su IP (148.225.111.150) y presionamos el botón ‘Open’ para iniciar la sesión en el equipo.
Sistema de Colas
SLURM
Como su nombre lo indica (Simple Linux Utility for Resource Management), SLURM es un administrador open-source de carga de trabajos diseñado para clusters Linux de cualquier dimensión. Es utilizado en varias de las computadoras más grandes del mundo.
Recursos GPU y CPU para utilizarse con el sistema de colas Slurm
COLAS | NO. CORES | NO. GPU´s | NO. NODOS | RAM POR NODO | HORAS MÁXIMO DE USO (walltime) | RESTRICCIONES (constraint) | NODOS ASIGNADOS |
general | 1168 | 0 | 25 | 128Gb | 168hrs. | interlago | ibnodo2 – ibnodo8 |
broadwell | ibnodo9 – ibnodo26 | ||||||
visualizacion | 16 | 2 | 2 | 96Gb | 4 hrs. | haswell | visualizacion1, visualizacion2 |
tesla | 16 | 4 | 1 | 256Gb | 168 hrs. | skylake | tesla |
Comandos Básicos del Sistema de Colas usando Slurm
srun | Lanza un job Lanza un job interactivo |
squeue | Muestra el estatus de todos los jobs |
scancel | Cancela un job en ejecución o pendiente Ejemplo: Cancela el trabajo con identificador 1221 scancel 1221 |
sinfo | Informa el estado de las particiones y los nodos gestionados por SLURM. Cuenta con una amplia variedad de opciones de filtrado, clasificación y formato. |
sacct | Muestra los jobs en ejecución, los encolados y los bloqueados. Se utiliza para reportar la información de las cuentas de jobs o pasos de jobs activos o completados. |
sbatch | Se utiliza para enviar un job por medio de un script para su ejecución. El script contendrá típicamente uno o más comandos srun para lanzar tareas paralelas. |
salloc | Se utiliza para asignar recursos a un job en tiempo real. Normalmente se utiliza para asignar recursos y generar un intérprete de comandos shell. Dicha terminal es utilizada entonces para ejecutar comandos srun para iniciar tareas en paralelo. |
smap | Reporta la información del estado de los job, particiones y nodos gestionados por SLURM, pero muestra gráficamente la información para reflejar la topología de red. |
Resumen de comandos Slurm |
Información básica para el envío de tareas de cálculo en SLURM
Los siguientes son los comandos de información básica para que usuarios puedan ejecutar programas en SLURM:
Se requiere crear un archivo script (extensión .slrm ) con los detalles del cálculo y enviarlo al sistema de colas SLURM mediante la orden:
- sbatch nombre_script.slrm
donde nombre_script es el nombre del archivo creado.
Para monitorear los jobs en SLURM se realiza con el comando
- squeue -u user_name
donde user_name es el nombre de su cuenta de usuario.
Para monitorear todos los jobs corriendo en la supercomputadora
- squeue
Para cancelar alguna tarea se hace con el comando
- scancel job_id
donde job_id es el identificador que aparece en la salida de squeue
Para conocer detalles sobre un job específico usar
- scontrol show job job_id
donde job_id es el identificador que aparece en la salida de squeue
Scripts de Slurm
- Ejemplos de Scripts SLURM
Tensorflow
tensorflow.slrm
Archivo de entrada cnn_mnist_test.py
Gaussian 09
gaussian.slrm
Archivo de entrada test300.com
Gromacs 2019.4
gromacs.slrm
Archivo de entrada benchMEM.tpr
NWChem 6.6
nwchem.slrm
Archivo de entrada Cytosine-OH.nw
Quantum Espresso 6.6
espresso.slrm
Archivo entrada benchMEM.tpr
Pseudopotencial
Programas secuenciales
secuencial.slrm
OpenMPI 3.1.5
openmpi_315.slrm
Ejemplos completos
Ejemplo con CUDA
Ejemplo con fortran y C (serial)
Ejemplo de MPI con fortran
Ejemplo de MPI con C++
Manuales de Software
ARCHIVO PDF | WEB OFICIAL |
Gaussian 09 User´s Reference | www.gaussian.com |
Gromacs 5.0.4 Reference Manual | www.gromacs.org |
Quantum Esresso 5.0.2 User´s Guide | www.quantum-espresso.org |
NAMD 2.11 User´s Guide | www.ks.uiuc.edu |
NWChem 6.6 | www.nwchem-sw.org |
Matlab R2011b | www.mathworks.com |
Cuda 5.5 | developer.nvidia.com/cuda-zone |
Aplvoro 3.0-28.1 | www.aplvoro.org |