Führen Sie einen Einzelknotenjob aus in AWS PCS - AWS PCS

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Führen Sie einen Einzelknotenjob aus in AWS PCS

Um einen Job mit Slurm auszuführen, bereiten Sie ein Einreichungsskript vor, in dem die Jobanforderungen angegeben sind, und senden es mit dem sbatch Befehl an eine Warteschlange. In der Regel erfolgt dies von einem gemeinsam genutzten Verzeichnis aus, sodass die Anmelde- und Rechenknoten über einen gemeinsamen Bereich für den Zugriff auf Dateien verfügen.

Connect zum Login-Knoten Ihres Clusters her und führen Sie die folgenden Befehle an der Shell-Eingabeaufforderung aus.

  • Werden Sie der Standardbenutzer. Wechseln Sie in das gemeinsam genutzte Verzeichnis.

    sudo su - ec2-user cd /shared
  • Verwenden Sie die folgenden Befehle, um ein Beispiel-Jobskript zu erstellen:

    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
  • Senden Sie das Jobskript an den Slurm-Scheduler:

    sbatch -p demo job.sh
  • Wenn der Job eingereicht wird, wird eine Job-ID als Zahl zurückgegeben. Verwenden Sie diese ID, um den Jobstatus zu überprüfen. Ersetzen job-id im folgenden Befehl mit der Zahl, die von zurückgegeben wurdesbatch.

    squeue --job job-id
    squeue --job 1

    Der squeue Befehl gibt eine Ausgabe zurück, die der folgenden ähnelt:

    JOBID PARTITION NAME USER     ST TIME NODES NODELIST(REASON)
    1     demo      test ec2-user CF 0:47 1     compute-1
  • Überprüfen Sie weiterhin den Status des Jobs, bis er den Status R (läuft) erreicht. Der Job ist erledigt, wenn squeue nichts zurückgegeben wird.

  • Untersuchen Sie den Inhalt des /shared Verzeichnisses.

    ls -alth /shared

    Die Befehlsausgabe ähnelt der folgenden:

    -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

    Die Dateien sind benannt single.1.out und single.1.err wurden von einem der Rechenknoten Ihres Clusters geschrieben. Da der Job in einem gemeinsam genutzten Verzeichnis (/shared) ausgeführt wurde, sind sie auch auf Ihrem Anmeldeknoten verfügbar. Aus diesem Grund haben Sie für diesen Cluster ein FSx For Lustre-Dateisystem konfiguriert.

  • Untersuchen Sie den Inhalt der single.1.out Datei.

    cat /shared/single.1.out

    Die Ausgabe sieht folgendermaßen oder ähnlich aus:

    This is job test [1] running on compute-1, submitted from ip-10-3-13-181
    Job complete