Changes between Version 6 and Version 7 of multi_step_task
- Timestamp:
- May 12, 2025, 2:40:37 PM (4 weeks ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
multi_step_task
v6 v7 8 8 En el segundo caso, es común que el usuario defina un solo trabajo de Slurm, que lanza un shell script con las tareas puestas de forma secuencial, pero al tratarse de un solo trabajo los requerimientos de memoria y cores se deben ajustar al máximo del conjunto de las tareas. 9 9 10 Imagine un pipelineque consiste en los siguientes pasos con los siguientes requerimientos de cores y memoria y su tiempo total de ejecución:10 Imagine un ''pipeline'' que consiste en los siguientes pasos con los siguientes requerimientos de cores y memoria y su tiempo total de ejecución: 11 11 12 - Adquisición de datosde diferentes orígenes. (1 core, 1Gb, 2 horas)13 - "Curado" de los datos(filtrado y preprocesamiento) (4 cores, 10Gb, 1 hora)14 - Análisis de los datos(10 cores, 4Gb, 1 hora)15 - Generación de resultados(1 core, 1Gb, 2 horas)12 - '''Adquisición de datos''' de diferentes orígenes. (1 core, 1Gb, 2 horas) 13 - '''Curado de los datos''' (filtrado y preprocesamiento) (4 cores, 10Gb, 1 hora) 14 - '''Análisis de los datos''' (10 cores, 4Gb, 1 hora) 15 - '''Generación de resultados''' (1 core, 1Gb, 2 horas) 16 16 17 17 Este pipeline tiene 2 pasos (1 y 4) que no son paralelizables y otros dos (2 y 3) que si lo son. Los paralelizables aún cuando tienen más necesidades computacionales, tardan menos al beneficiarse de la ejecución paralela. 18 18 19 El problema es que el pipeline completo tarda 6 horas y si se lanza en un solo trabajo usando las especificaciones de cores y memoria máximos para el conjunto de tareas, se reservarían durante esas 6 horas 10 cores y 10 Gb de memoria, cuando dichas necesidades máximas solo se necesitan en un hora en cada caso. Esto se puede apreciar con el siguiente shell script: 19 El problema es que el pipeline completo tarda 6 horas y si se lanza en un solo trabajo usando las especificaciones de cores y memoria máximos para el conjunto de tareas, se reservarían durante esas 6 horas 10 cores y 10 Gb de memoria, cuando dichas necesidades máximas solo se necesitan en un hora en cada caso. 20 21 El siguiente shell script presenta dicho problema. En el se utiliza el comando {{{stress}}} para simular una carga computacional: 20 22 21 23 {{{#!bash