stringtranslate.com

Administrador de carga de trabajo de Slurm

Slurm Workload Manager , anteriormente conocido como Simple Linux Utility for Resource Management ( SLURM ), o simplemente Slurm , es un programador de trabajos gratuito y de código abierto para Linux y kernels similares a Unix , utilizado por muchas de las supercomputadoras y clústeres de computadoras del mundo .

Proporciona tres funciones clave:

Slurm es el administrador de carga de trabajo en aproximadamente el 60% de las supercomputadoras TOP500 . [1]

Slurm utiliza un algoritmo de mejor ajuste basado en la programación de curvas de Hilbert o en la topología de red de árbol gordo para optimizar la localidad de las asignaciones de tareas en computadoras paralelas. [2]

Historia

Slurm comenzó a desarrollarse como un esfuerzo colaborativo principalmente entre Lawrence Livermore National Laboratory , SchedMD , [3] Linux NetworX, Hewlett-Packard y Groupe Bull como un administrador de recursos de software libre. Se inspiró en el Quadrics RMS de código cerrado y comparte una sintaxis similar. El nombre es una referencia a la gaseosa en Futurama . [4] Más de 100 personas de todo el mundo han contribuido al proyecto. Desde entonces, ha evolucionado hasta convertirse en un sofisticado programador por lotes capaz de satisfacer los requisitos de muchos centros informáticos grandes.

A partir de noviembre de 2021 , la lista TOP500 de las computadoras más poderosas del mundo indica que Slurm es el administrador de carga de trabajo en más de la mitad de los diez sistemas principales.

Estructura

El diseño de Slurm es muy modular y cuenta con alrededor de 100 complementos opcionales. En su configuración más simple, se puede instalar y configurar en un par de minutos. Las configuraciones más sofisticadas brindan integración de bases de datos para contabilidad, administración de límites de recursos y priorización de cargas de trabajo.

Características

Las características de Slurm incluyen: [ cita requerida ]

Se anuncian las siguientes características para la versión 14.11 de Slurm, lanzada en noviembre de 2014: [5]

Plataformas compatibles

Slurm está desarrollado principalmente para funcionar junto con distribuciones Linux , aunque también es compatible con algunos otros sistemas operativos basados ​​en POSIX , incluidos los BSD ( FreeBSD , NetBSD y OpenBSD ). [6] Slurm también admite varias arquitecturas informáticas únicas, que incluyen:

Licencia

Slurm está disponible bajo la Licencia Pública General GNU v2 .

Soporte comercial

En 2010, los desarrolladores de Slurm fundaron SchedMD, que mantiene el código fuente canónico, proporciona desarrollo, soporte comercial de nivel 3 y servicios de capacitación. Bull , Cray y Science + Computing (filial de Atos ) también ofrecen soporte comercial .

Uso

Slurm distingue varias etapas para un trabajo

El sistema «slurm» tiene tres partes principales:

Los clientes pueden emitir comandos al demonio de control, que aceptará y dividirá la carga de trabajo entre los demonios informáticos.

Para los clientes, los comandos principales son `srun` (poner en cola un trabajo interactivo), `sbatch` (poner en cola un trabajo), `squeue` (imprimir la cola de trabajos) y `scancel` (eliminar un trabajo de la cola).

Los trabajos se pueden ejecutar en modo por lotes o en modo interactivo . En el modo interactivo, un nodo de cómputo iniciaría un shell, conectaría al cliente a él y ejecutaría el trabajo. Desde allí, el usuario puede observar e interactuar con el trabajo mientras se ejecuta. Por lo general, los trabajos interactivos se utilizan para la depuración inicial y, después de la depuración, el mismo trabajo se enviaría mediante `sbatch`. En el caso de un trabajo en modo por lotes, sus salidas `stdout` y `stderr` se dirigen normalmente a archivos de texto para su inspección posterior.

Véase también

Referencias

  1. ^ "Ejecución de un trabajo en HPC con Slurm | HPC | USC". hpcc.usc.edu . Archivado desde el original el 2019-03-06 . Consultado el 2019-03-05 .
  2. ^ Pascual, Jose Antonio; Navaridas, Javier; Miguel-Alonso, Jose (2009). Efectos de las políticas de asignación que tienen en cuenta la topología en el rendimiento de la programación . Estrategias de programación de tareas para el procesamiento paralelo. Lecture Notes in Computer Science. Vol. 5798. págs. 138–144. doi :10.1007/978-3-642-04633-9_8. ISBN 978-3-642-04632-2.
  3. ^ "Soporte comercial, desarrollo e instalación de Slurm". SchedMD . Consultado el 23 de febrero de 2014 .
  4. ^ "SLURM: Utilidad sencilla de Linux para la gestión de recursos" (PDF) . 23 de junio de 2003 . Consultado el 11 de enero de 2016 .
  5. ^ "Slurm - Novedades". SchedMD . Consultado el 29 de agosto de 2014 .
  6. ^ Plataformas Slurm

Lectura adicional

Enlaces externos