View a markdown version of this page

Behebung von Fehlern bei der Auftragsübermittlung aufgrund eines MaxJobCount Limits - AWS STCK

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.

Behebung von Fehlern bei der Auftragsübermittlung aufgrund eines MaxJobCount Limits

Problem: Die Auftragsübermittlung schlägt mit der folgenden Fehlermeldung fehl:

sbatch: error: Slurm temporarily unable to accept job, sleeping and retrying

Dieser Fehler tritt auch dann auf, wenn die Anzahl der laufenden und ausstehenden Jobs deutlich unter dem Joblimit des Clusters zu liegen scheint.

Ursache: Das MaxJobCount Limit umfasst alle Jobs, die von Slurm verfolgt werden, nicht nur laufende oder ausstehende Jobs. Abgeschlossene Jobs bleiben für einen bestimmten Zeitraum (standardmäßig 5 Minuten) im Speicher von Slurm, bevor sie gelöscht werden. In Zeiten mit hohem Auftragsdurchsatz kann die Gesamtzahl der aktiven und der kürzlich abgeschlossenen Jobs den Grenzwert überschreiten.

Sie können die Gesamtzahl der Jobs überprüfen, indem Sie den folgenden Befehl auf einem Clusterknoten ausführen:

scontrol show jobs | grep -c JobId

Dies zeigt die Gesamtzahl der Jobs, die Slurm verfolgt, einschließlich abgeschlossener Jobs, die noch gelöscht werden müssen.

Lösung: Erwägen Sie einen der folgenden Ansätze:

  • Einen größeren Cluster erstellen — Wenn Ihre Arbeitslast ständig mehr gleichzeitige Jobs erfordert, erstellen Sie einen neuen Cluster mit einer größeren Größe. Weitere Informationen zu Clustergrößen und ihren Grenzwerten finden Sie unterClustergröße in AWS PCS.

  • Reduzieren Sie die Rate der Jobeinreichungen — Passen Sie Ihre Job-Skripte an, um Jobs mit einer langsameren Geschwindigkeit einzureichen, sodass die Zeit abgeschlossener Jobs aus dem Tracking von Slurm entfernt werden kann.