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.
Essayer d'exécuter une tâche
srun
la tâche interactive échoue avec une erreur srun: error: fwd_tree_thread: can't find address for <host>, check slurm.conf
-
Pourquoi a-t-il échoué ?
Vous avez exécuté la
srun
commande pour soumettre une tâche, puis vous avez augmenté la taille d'une file d'attente en utilisant lapcluster update-cluster
commande sans redémarrer les Slurm démons une fois la mise à jour terminée.Slurmorganise Slurm les démons dans une arborescence afin d'optimiser la communication. Cette hiérarchie n'est mise à jour que lorsque les démons démarrent.
Supposons que vous
srun
lanciez une tâche, puis que vous exécutiez lapcluster update-cluster
commande pour augmenter la taille de la file d'attente. De nouveaux nœuds de calcul sont lancés dans le cadre de la mise à jour. Ensuite, place votre tâche en Slurm file d'attente sur l'un des nouveaux nœuds de calcul. Dans ce cas, les Slurm daemons et lessrun
don't détectent les nouveaux nœuds de calcul.srun
renvoie une erreur car il ne détecte pas les nouveaux nœuds. -
Comment résoudre le problème ?
Redémarrez les Slurm démons sur tous les nœuds de calcul, puis utilisez-les
srun
pour soumettre votre tâche. Vous pouvez planifier le redémarrage Slurm des démons en exécutant lascontrol reboot
commande qui redémarre les nœuds de calcul. Pour plus d'informations, consultez scontrol rebootdans la Slurm documentation. Vous pouvez également redémarrer manuellement les Slurm démons sur les nœuds de calcul en demandant le redémarrage des services correspondants systemd
.
Job bloqué dans son CF
état avec squeue
la commande
Cela peut être dû au démarrage des nœuds dynamiques. Pour plus d’informations, consultez Observation des erreurs lors de l'initialisation des nœuds de calcul.
Exécuter des travaux à grande échelle et voir nfsd: too many open connections, consider increasing
the number of threads in /var/log/messages
Avec un système de fichiers en réseau, lorsque les limites du réseau sont atteintes, le temps d'attente des E/S augmente également. Cela peut entraîner des blocages logiciels, car le réseau est utilisé pour écrire des données à la fois pour le réseau et pour les métriques d'E/S.
Avec les instances de 5e génération, nous utilisons le pilote ENA pour exposer les compteurs de paquets. Ces compteurs comptent les paquets façonnés AWS lorsque le réseau atteint les limites de bande passante de l'instance. Vous pouvez vérifier ces compteurs pour voir s'ils sont supérieurs à 0. Si tel est le cas, cela signifie que vous avez dépassé vos limites de bande passante. Vous pouvez consulter ces compteurs en courantethtool -S eth0 | grep exceeded
.
Le dépassement des limites du réseau est souvent dû à la prise en charge d'un trop grand nombre de connexions NFS. C'est l'une des premières choses à vérifier lorsque vous atteignez ou dépassez les limites du réseau.
Par exemple, le résultat suivant montre les packages abandonnés :
$
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
Pour éviter de recevoir ce message, envisagez de remplacer le type d'instance du nœud principal par un type d'instance plus performant. Envisagez de déplacer votre stockage de données vers des systèmes de fichiers de stockage partagés qui ne sont pas exportés sous forme de partage NFS, tels qu'Amazon EFS ou Amazon FSx. Pour plus d'informations, consultez Stockage partagé les meilleures pratiques
Exécution d'une tâche MPI
Activation du mode de débogage
Pour activer le mode de débogage d'OpenMPI, voir Quelles sont les commandes d'Open MPI qui facilitent
Pour activer le mode de débogage IntelMPI, consultez la section Autres
Voir MPI_ERRORS_ARE_FATAL
et OPAL ERROR
intégrer le résultat du travail
Ces codes d'erreur proviennent de la couche MPI de votre application. Pour savoir comment obtenir les journaux de débogage MPI à partir de votre application, consultez. Activation du mode de débogage
Cette erreur peut être due au fait que votre application a été compilée pour une implémentation MPI spécifique, telle qu'OpenMPI, et que vous essayez de l'exécuter avec une autre implémentation MPI, telle qu'IntelMPI. Assurez-vous de compiler et d'exécuter votre application avec la même implémentation MPI.
Utilisation mpirun
avec DNS géré désactivé
Pour les clusters créés avec SlurmSettings/Dns/DisableManagedDns et UseEc2Hostnames définis surtrue, le nom du Slurm nœud n'est pas résolu par le DNS. Slurmpeut démarrer des processus MPI lorsqu'ils nodenames
ne sont pas activés et si la tâche MPI est exécutée dans un contexte. Slurm Nous vous recommandons de suivre les instructions du guide de l'utilisateur Slurm MPI