3 votes

Spécification des ressources SLURM lors de l'exécution de plusieurs tâches en parallèle

Selon les réponses données ici Que fait le --ntasks ou -n tasks dans SLURM ? on peut exécuter plusieurs travaux en parallèle via ntasks pour sbatch, suivi de srun . Pour poser une question complémentaire, comment spécifier la quantité de mémoire nécessaire pour exécuter des tâches en parallèle de cette manière ?

Si 3 travaux sont exécutés en parallèle, chacun nécessitant 8G de mémoire, faut-il spécifier 24G de mémoire dans le formulaire de demande d'accès ? sbatch (c'est-à-dire la somme de la mémoire de tous les travaux) ou ne pas donner les paramètres de la mémoire dans sbatch mais spécifiez plutôt 8G de mémoire pour chaque srun ?

3voto

damienfrancois Points 7545

Vous devez spécifier l'exigence de mémoire dans le script soumis avec sbatch sinon vous vous retrouverez avec l'allocation de mémoire par défaut, qui pourrait ne pas correspondre à vos besoins. Si vous spécifiez ensuite la mémoire de 8 Go dans le champ srun vous risquez de ne pas pouvoir lancer de tâches si la mémoire par défaut est inférieure à cette valeur, ou de n'avoir qu'une ou deux tâches en parallèle si la mémoire par défaut est comprise entre 16 et 24 Go.

Vous pouvez demander --mem=24GB mais qui offrent moins de flexibilité que de spécifier --mem-per-cpu=8G .

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X