Essayer d'exécuter une tâche - AWS ParallelCluster

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

La section suivante propose des solutions de dépannage possibles si vous rencontrez des problèmes lors de l'exécution d'une tâche.

srunla 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 la pcluster update-cluster commande sans redémarrer le Slurm démons une fois la mise à jour terminée.

    Slurm organise Slurm des démons dans une hiérarchie arborescente pour 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 la pcluster 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, Slurm place votre tâche en file d'attente sur l'un des nouveaux nœuds de calcul. Dans ce cas, les deux Slurm démons et srun ne détectent pas les nouveaux nœuds de calcul. srunrenvoie une erreur car il ne détecte pas les nouveaux nœuds.

  • Comment résoudre le problème ?

    Redémarrez le Slurm des démons sur tous les nœuds de calcul, puis utilisez-les srun pour soumettre votre tâche. Vous pouvez planifier le Slurm les démons redémarrent en exécutant la scontrol reboot commande qui redémarre les nœuds de calcul. Pour plus d'informations, voir scontrol reboot dans le Slurm . Vous pouvez également redémarrer manuellement le Slurm des démons sur les nœuds de calcul en demandant le redémarrage des services correspondantssystemd.

Job bloqué dans son CF état avec squeue la commande

Cela peut être dû au démarrage des nœuds dynamiques. Pour de plus amples informations, veuillez consulter 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 ENA pilote 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 NFS connexions. 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 NFS partage, tels qu'Amazon EFS ou AmazonFSx. Pour plus d'informations, consultez Stockage partagé les meilleures pratiques sur le AWS ParallelCluster Wiki sur GitHub.

Exécution d'une MPI tâche

Activation du mode de débogage

Pour activer le mode de MPI débogage ouvert, voir Quelles sont les commandes d'Open MPI qui facilitent le débogage ?

Pour activer le mode de MPI débogage Intel, voir Autres variables d'environnement.

Voir MPI_ERRORS_ARE_FATAL et OPAL ERROR intégrer le résultat du travail

Ces codes d'erreur proviennent de la MPI couche de votre application. Pour savoir comment obtenir des journaux de MPI débogage à partir de votre application, consultezActivation du mode de débogage.

Cette erreur peut être due au fait que votre application a été compilée pour une MPI implémentation spécifique, telle qu'OpenMPI, et que vous essayez de l'exécuter avec une autre MPI implémentation, telle qu'IntelMPI. Assurez-vous de compiler et d'exécuter votre application avec la même MPI implémentation.

Utilisation mpirun avec Managed DNS Disabled

Pour les clusters créés avec SlurmSettings/Dns/DisableManagedDnset UseEc2Hostnames définis sur, true Slurm le nom du nœud n'est pas résolu par leDNS. Slurm peut démarrer MPI des processus lorsqu'ils nodenames ne sont pas activés et si le MPI travail est exécuté dans un Slurm contexte. Nous vous recommandons de suivre les directives du Slurm MPIGuide de l'utilisateur pour exécuter MPI des tâches avec Slurm.