Pregunta más frecuente

Ejemplo de fichero sbatch para computo en GPU
Últimas actualizaciones hace 2 años

#!/bin/bash

##########################
###  DIRECTIVAS SLURM  ###
##########################

## NOTA: Las directivas de SLURM se deben de escribir como comentarios bash (con '#') seguida de la palabra "SBATCH" (sin espacio)
## NOTA: Cualquier modificacion en el comienzo de las directivas (como un espacio o dobles "##") hará que la directiva no se aplique y se trate como un comentario mas

## Particion de computo a la que se lanzara el trabajo
#SBATCH --partition gpu

## Numero de nodos que se requerirán para el trabajo
#SBATCH --nodes 1

## Numero de cores por nodo que se reservarán para el trabajo (min: 1)
#SBATCH --ntasks-per-node 8

## Numero de GPUs totales que se reservarán para el trabajo
#SBATCH --gpus 1

## Ficheros de salida y error estandar del trabajo (redirecciona las salidas por consola a un fichero de texto)
## Ambas salidas pueden ir al mismo o a ficheros diferentes
#SBATCH --output trabajoPruebaGPU.out
#SBATCH --error trabajoPruebaGPU.out



##########################
###  CARGA DE MODULOS  ###
##########################

## En este apartado se cargan los modulos necesarios para la ejecución de aplicaciones

module purge      # Limpieza de todos los modulos cargados previamente
module load cuda  # Carga del modulo de Nvidia CUDA


###################
###  EJECUCION  ###
###################

## En este apartado se procede a la ejecución de los calculos y computos objetivos del trabajo
## Se pueden lanzar de 3 maneras diferentes dependiendo del programa a ejecutar o el resultado que se desea obtener:
##  - Ejecucion Normal
##      Esta ejecución es como la que se realizaría de manera clasica en la terminal
##      Ejecuta la aplicación una sola vez. Si esta usa OpenMP para gestionar los multihilos, se repartirán hasta usar todos los cores reservados.
##      Ejemplo:
##        ./calculo.run
##        python3 myscript.py
##
##  - Ejecución con MPI
##      Esta ejecucion se usa para aplicaciones que paralelizan mediante MPI.
##      Ejecuta multiples procesos conectados mediante MPI. Cada proceso ocupa uno de los cores reservados por el trabajo.
##      Este tipo de ejecuciones permiten la paralelizacion entre multiples nodos de computo.
##      Ejemplo:
##        mpirun -n $SLURM_NTASKS calculoMPI.run
##
##  - Ejecucion multiple
##      Este metodo sirve para ejecutar tantas veces un calculo como cores se han reservado en el trabajo.
##      El calculo ejecutado es el mismo en todos los cores. Sirve para calculos de generacion y de repeticion.
##      Ejemplo:
##        srun calculo.run


python3 entrenamientoGAN.py


# Prueba de Hola mundo en todos los cores reservados
# srun bash -c 'echo "Hola desde el nodo $(hostname) con proceso $SLURM_LOCALID"'



#########################
###  FIN DEL TRABAJO  ###
#########################

## En este ultimo apartado, se realizan las labores de limpieza de ficheros basura del calculo (si los hubiese)

echo "Job Terminated"

Espere, por favor.

Por favor, espere... ¡Es solo un momento!