Version 3 (modified by tonin, 15 months ago) (diff) |
---|
La importancia del parámetro --mem
El sistema de colas slurm no tiene el conocimiento apriorístico sobre las necesidades de los trabajos que lanzan los usuarios. En principio se "fia" de los parámetros que el usuario le especifica en su fichero respecto al consumo de recursos, ya sea de cores de cómputo o de memoria.
De esa manera si un usuario especifica en su fichero slurm solamente el parámetro #SBATCH --ntasks=2 asumiendo que su trabajo creará dos hilos de ejecución, al no haber especificado el parámetro --mem slurm entenderá que este trabajo necesita toda la memoria del nodo. De esa forma aunque el resto de cores del nodo estén ociosos, no podrá entrar en él ningún trabajo de otro usuario, ni siquiera del mismo que mandó el primer trabajo.
Sin embargo si el usuario sabe que su trabajo consumirá como mucho 10Gb de memoria, debe poner en su fichero slurm el parámetro #SBATCH --mem=10gb. Así permitirá que otros trabajos puedan entrar hasta que la suma de valores de memoria de todos los trabajos del nodo llegue al límite de la memoria del mismo, o hasta que todos los cores se ocupen.
Es importante tener en cuenta que el parámetro --mem es una restricción laxa, esto es, si al final nuestro trabajo ocupara más memoria de la que fijamos, se ejecutará perfectamente siempre que el nodo tenga memoria disponible.
Los administradores podemos poner valores por defecto por si no se especifica nada por parte del usuario, pero al no tener conocimiento de lo que se va a ejecutar es posible que hagamos más mal que bien.