Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Exécuter une tâche à nœud unique dans AWS PCS
Pour exécuter une tâche à l'aide de Slurm, vous devez préparer un script de soumission spécifiant les exigences de la tâche et le soumettre à une file d'attente avec la sbatch
commande. Généralement, cela se fait à partir d'un répertoire partagé, de sorte que les nœuds de connexion et de calcul disposent d'un espace commun pour accéder aux fichiers.
Connectez-vous au nœud de connexion de votre cluster et exécutez les commandes suivantes à l'invite du shell.
-
Devenez l'utilisateur par défaut. Accédez au répertoire partagé.
sudo su - ec2-user cd /shared
-
Utilisez les commandes suivantes pour créer un exemple de script de tâche :
cat << EOF > job.sh #!/bin/bash #SBATCH -J single #SBATCH -o single.%j.out #SBATCH -e single.%j.err echo "This is job \${SLURM_JOB_NAME} [\${SLURM_JOB_ID}] running on \${SLURMD_NODENAME}, submitted from \${SLURM_SUBMIT_HOST}" && sleep 60 && echo "Job complete" EOF
-
Soumettez le script de tâche au planificateur Slurm :
sbatch -p demo job.sh
-
Lorsque la tâche est soumise, elle renvoie un identifiant de tâche sous forme de numéro. Utilisez cet identifiant pour vérifier le statut du travail. Remplacez
job-id
dans la commande suivante avec le numéro renvoyé parsbatch
.squeue --job
job-id
squeue --job 1
La
squeue
commande renvoie un résultat similaire à ce qui suit :JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON) 1 demo test ec2-user CF 0:47 1 compute-1
-
Continuez à vérifier l'état de la tâche jusqu'à ce qu'elle atteigne le statut
R
(en cours). Le travail est terminé quand ilsqueue
ne renvoie rien. -
Inspectez le contenu du
/shared
répertoire.ls -alth /shared
Le résultat de la commande est similaire à ce qui suit :
-rw-rw-r- 1 ec2-user ec2-user 107 Mar 19 18:33 single.1.out -rw-rw-r- 1 ec2-user ec2-user 0 Mar 19 18:32 single.1.err -rw-rw-r- 1 ec2-user ec2-user 381 Mar 19 18:29 job.sh
Les fichiers
single.1.err
ont été nomméssingle.1.out
et écrits par l'un des nœuds de calcul de votre cluster. La tâche ayant été exécutée dans un répertoire partagé (/shared
), elles sont également disponibles sur votre nœud de connexion. C'est pourquoi vous avez configuré un système de fichiers FSx for Lustre pour ce cluster. -
Inspectez le contenu du
single.1.out
fichier.cat /shared/single.1.out
La sortie est similaire à ce qui suit :
This is job test [1] running on compute-1, submitted from ip-10-3-13-181 Job complete