Ich versuche, einen Job auszuführen - AWS ParallelCluster

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.

Ich versuche, einen Job auszuführen

Im folgenden Abschnitt finden Sie mögliche Lösungen zur Problembehandlung, falls Sie beim Versuch, einen Job auszuführen, auf Probleme stoßen.

srunDer interaktive Job schlägt mit einem Fehler fehl srun: error: fwd_tree_thread: can't find address for <host>, check slurm.conf

  • Warum ist es gescheitert?

    Sie haben den srun Befehl zum Senden eines Jobs ausgeführt und dann die Größe einer Warteschlange erhöht, indem Sie den pcluster update-cluster Befehl verwendet haben, ohne den Slurm Daemons nach Abschluss des Updates.

    Slurm organisiert Slurm Daemons in einer Baumhierarchie zur Optimierung der Kommunikation. Diese Hierarchie wird nur aktualisiert, wenn die Daemons starten.

    Angenommensrun, Sie starten einen Job und führen dann den pcluster update-cluster Befehl aus, um die Warteschlange zu vergrößern. Neue Rechenknoten werden im Rahmen des Updates gestartet. Dann Slurm stellt Ihren Job auf einen der neuen Rechenknoten. In diesem Fall sind sowohl Slurm Daemons und erkennen die neuen Rechenknoten srun nicht. srungibt einen Fehler zurück, weil die neuen Knoten nicht erkannt werden.

  • Wie löst man das Problem?

    Starten Sie das neu Slurm Daemons auf allen Rechenknoten und verwenden Sie sie dann, srun um Ihren Job einzureichen. Sie können das planen Slurm Daemons werden neu gestartet, indem Sie den scontrol reboot Befehl ausführen, der die Rechenknoten neu startet. Weitere Informationen finden Sie unter scontrol reboot im Slurm -Dokumentation. Sie können das auch manuell neu starten Slurm Daemons auf den Rechenknoten, indem Sie einen Neustart der entsprechenden systemd Dienste anfordern.

Der Job steckt im CF Status mit dem squeue Befehl fest

Dies könnte ein Problem beim Einschalten dynamischer Knoten sein. Weitere Informationen finden Sie unter Fehler bei der Initialisierung von Rechenknoten werden angezeigt.

Großaufträge ausführen und sehen nfsd: too many open connections, consider increasing the number of threads in /var/log/messages

Bei einem Netzwerkdateisystem nimmt die I/O-Wartezeit ebenfalls zu, wenn die Netzwerkgrenzen erreicht werden. Dies kann zu Soft-Lockups führen, da das Netzwerk zum Schreiben von Daten sowohl für Netzwerk- als auch für I/O-Metriken verwendet wird.

Bei Instances der 5. Generation verwenden wir den ENA Treiber, um Paketzähler verfügbar zu machen. Diese Zähler zählen die Pakete, die dadurch geformt werden, AWS wann das Netzwerk die Bandbreitenlimits der Instanz erreicht. Sie können diese Zähler überprüfen, um festzustellen, ob sie größer als 0 sind. Wenn dies der Fall ist, haben Sie Ihre Bandbreitenlimits überschritten. Sie können sich diese Zähler anzeigen lassen, indem Sie den Befehl ausführenethtool -S eth0 | grep exceeded.

Eine Überschreitung der Netzwerkgrenzen ist häufig darauf zurückzuführen, dass zu viele NFS Verbindungen unterstützt werden. Dies ist eines der ersten Dinge, die Sie überprüfen sollten, wenn Sie Netzwerklimits erreichen oder überschreiten.

Die folgende Ausgabe zeigt beispielsweise gelöschte Pakete:

$ ethtool -S eth0 | grep exceeded bw_in_allowance_exceeded: 38750610 bw_out_allowance_exceeded: 1165693 pps_allowance_exceeded: 103 conntrack_allowance_exceeded: 0 linklocal_allowance_exceeded: 0

Um diese Meldung zu vermeiden, sollten Sie erwägen, den Instanztyp des Hauptknotens in einen leistungsfähigeren Instanztyp zu ändern. Erwägen Sie, Ihren Datenspeicher in Dateisysteme mit gemeinsam genutztem Speicher zu verschieben, die nicht als NFS Share exportiert werden, z. B. Amazon EFS oder AmazonFSx. Weitere Informationen finden Sie unter Gemeinsamer Speicher und die Best Practices im AWS ParallelCluster Wiki unter GitHub.

Einen MPI Job ausführen

Debug-Modus wird aktiviert

Informationen zum Aktivieren des MPI Offenen Debug-Modus finden Sie unter Welche Steuerelemente bietet Open MPI zur Unterstützung beim Debuggen?

Informationen zur Aktivierung des MPI Intel-Debug-Modus finden Sie unter Andere Umgebungsvariablen.

Anzeige MPI_ERRORS_ARE_FATAL und OPAL ERROR in der Jobausgabe

Diese Fehlercodes stammen aus dem MPI Layer in Ihrer Anwendung. Informationen zum Abrufen von MPI Debug-Protokollen aus Ihrer Anwendung finden Sie unterDebug-Modus wird aktiviert.

Eine mögliche Ursache für diesen Fehler ist, dass Ihre Anwendung für eine bestimmte MPI Implementierung kompiliert wurde, z. B. OpenMPI, und Sie versuchen, sie mit einer anderen MPI Implementierung wie Intel MPI auszuführen. Stellen Sie sicher, dass Sie Ihre Anwendung mit derselben MPI Implementierung kompilieren und ausführen.

Verwendung mpirun bei deaktivierter Verwaltung DNS

Für Cluster, die mit der Einstellung SlurmSettings/Dns/ DisableManagedDnsund UseEc2Hostnames auf erstellt wurden, true ist Slurm Der Knotenname wird nicht durch den aufgelöst. DNS Slurm kann MPI Prozesse booten, wenn sie nodenames nicht aktiviert sind und wenn der MPI Job in einem ausgeführt wird Slurm Kontext. Wir empfehlen, den Anweisungen in der Slurm MPIBenutzerhandbuch zum Ausführen von MPI Jobs mit Slurm.