GNU/Linux >> Tutoriels Linux >  >> Linux

Utiliser la variable Bash dans le script SLURM sbatch

Slurm arrête de traiter #SBATCH directives sur la première ligne de code exécutable dans un script. Pour les utilisateurs dont le #SBATCH les directives ne dépendent pas du code qu'elles essaient d'exécuter au-dessus de ces directives, il suffit de mettre le #SBATCH lignes en haut.

Voir l'autre réponse pour une solution de contournement/solution si, comme avec OP, vos options de sbatch dépendent des commandes que vous avez placées au-dessus d'elles.

Le script batch peut contenir des options précédées de "#SBATCH" avant toute commande exécutable dans le script . sbatch arrêtera de traiter d'autres directives #SBATCH une fois que la première ligne non-commentaire non-blanche aura été atteinte dans le script.

D'après les documents sbatch, je souligne.


Cela ne fonctionnera pas. Que se passe-t-il lorsque vous exécutez

sbatch myscript.sh

est que slurm analyse le script pour ces lignes #SBATCH spéciales, génère un enregistrement de travail, stocke le script batch quelque part. Le script batch n'est exécuté que plus tard lors de l'exécution de la tâche.

Vous devez donc structurer votre flux de travail d'une manière légèrement différente et calculer d'abord le nombre de procs dont vous avez besoin avant de soumettre le travail. Notez que vous pouvez utiliser quelque chose comme

sbatch -n $numProcs myscript.sh

, vous n'avez pas besoin de générer automatiquement le script (de plus, mpirun devrait pouvoir obtenir automatiquement le nombre de procs dans votre allocation, pas besoin d'utiliser "-np").


Linux
  1. Utiliser l'extension .sh ou .bash pour les scripts bash ?

  2. La commande Rm dans le script Bash ne fonctionne pas avec la variable ?

  3. Manières inhabituelles d'utiliser des variables dans des scripts bash

  4. Utilisez Expect dans un script Bash pour fournir un mot de passe à une commande SSH

  5. connexion docker automatique dans un script bash

Utilisez ce script Bash utile pour observer les étoiles

Variable d'exportation bash

35 exemples de scripts bash

Comment exécuter un script bash

Ouvrir Vim depuis un script shell Bash

Exécutez la commande bash sur le pipeline jenkins