Script de lanzamiento – slanzarv

Tabla de contenidos

Para ejecutar un programa, es necesario indicar al gestor de colas una serie de información como el nombre del ejecutable, los recursos que necesita (CPU, RAM,…), su tiempo de ejecución, etc.

La forma de hacerlo es mediante un script donde hemos de indicar esos datos. Aunque su sintaxis no es demasiado compleja, es necesario conocerla y escribir un script para cada programa que se envíe.

Con el fin de aliviar este esfuerzo extra, se ha creado un pequeño programa que se encarga de crear el script y enviar el trabajo a SLURM.

slanzarv #

Script que facilita el envío de trabajos a SLURM.

Formato del comando:

$ slanzarv [opciones] programa [argumentos]

Opciones:

  • ––cpus-per-task | -c : número de CPUs
  • ––mem | -m : tamaño de memoria en MB
  • ––nomail : desactiva el envio de email en caso de fallo o cuando finaliza el trabajo
  • ––short : envia el trabajo a la cola corta
  • ––time | -t: máximo tiempo de ejecución (ha de ser menor que el tiempo límite de la partición). Por defecto, el tiempo por defecto de la partición. Formatos:
    • «minutes», «minutes:seconds», «hours:minutes:seconds», «days-hours», «days-hours:minutes» and «days-hours:minutes:seconds»
  • ––use-only-faster-nodes : el trabajo solo podrá ser ejecutado en los nodos más potentes (grupo metis, hermes o kratos). No tiene efecto en la cola corta, puesto que esta cola solo usa los más nodos rápidos
  • ––family : permite seleccionar la familia de CPUs en la que se ejecutará el trabajo. Las opciones disponibles son (ordenados de más nuevos a más antiguos)
    • por grupos: metis, hermes, kratos, calypso
    • por microarquitectura: cascadelake, skylake, broadwell, haswell, westmere-ep, harpertown
  • ––min-family : permite seleccionar la familia más antigua de CPUs a usar. Ejemplo: –min-family=kratos podrá usar metis, hermes y kratos, pero no calypso
  • ––with-modules : lista separada por comas y sin espacios de modulos necesarios para la ejecucion

 

Ejemplo de uso:

Solicitar 8 CPUs y 2400 MB de RAM para ‘miprograma’, llamado con los los argumentos ‘230 asx’

slanzarv -c 8 -m 24000 ./miprograma 230 asx

Uso avanzado:

Se pueden pasar opciones adicionales a sbatch. Para ello, es necesario indicar el fin de las opciones con —

slanzarv -c 4 -m 3400 --contiguous --hold -- ./miprograma 230 asx