AnglaisFrançaisEspagnol

Ad


Icône de favori OnWorks

lamexec - En ligne dans le Cloud

Exécutez lamexec dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande laexec qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks en utilisant l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

Nom


lamexec - Exécute des programmes non-MPI sur des nœuds LAM.

SYNOPSIS


lamexec [-fhvD] [-c # | -np #] [-nw | -w] [-pty] [-s nœud] [-x
VAR1[=VALEUR1][,VAR2[=VALUE2],...]] [où] programme [-- args]

OPTIONS


-c # synonyme de -np (voir ci-dessous).

-D Utilisez l'emplacement du programme exécutable comme répertoire de travail actuel pour créé
processus. Le répertoire de travail actuel des processus créés sera défini
avant que le programme de l'utilisateur ne soit invoqué.

-f Ne configurez pas les descripteurs de fichiers d'E/S standard - utilisez les valeurs par défaut.

-h Imprimer des informations utiles sur cette commande.

-np # (voir ci-dessous). Exécutez ce nombre de copies du programme sur les nœuds donnés. Cette
indique que le fichier spécifié est un programme exécutable et non un
schéma applicatif. Si aucun nœud n'est spécifié, tous les nœuds LAM sont pris en compte pour
Planification; LAM programmera les programmes de manière à tour de rôle, « enveloppant
autour" (et en planifiant plusieurs copies sur un seul nœud) si nécessaire.

-nw N'attendez pas la fin de tous les processus avant de quitter lamexec. Cette option
est mutuellement exclusif avec -w.

-pty Activer la prise en charge des pseudo-tty. Entre autres choses, cela a permis à la mémoire tampon de ligne
sortie (ce qui est probablement ce que vous voulez). La seule raison pour laquelle cette fonctionnalité est
pas activé par défaut est parce qu'il est si nouveau et n'a pas été intensivement
encore testé.

-s nœud Chargez le programme à partir de ce nœud. Cette option n'est pas valide sur la ligne de commande
si un schéma d'application est spécifié.

-v Soyez bavard ; rendre compte des étapes importantes au fur et à mesure qu'elles sont accomplies.

-w Attendez que toutes les applications se terminent avant lamexec sorties.

-x Exporter les variables d'environnement spécifiées vers les nœuds distants avant l'exécution
le programme. Des variables d'environnement existantes peuvent être spécifiées (voir les exemples
section ci-dessous) ou de nouveaux noms de variables spécifiés avec les valeurs correspondantes. Les
analyseur pour le -x l'option n'est pas très sophistiquée; il ne comprend même pas
valeurs citées. Il est conseillé aux utilisateurs de définir des variables dans l'environnement, puis
utilisé -x pour les exporter (pas les définir).

De Un ensemble d'identifiants de nœuds et/ou de CPU indiquant par où commencer

-- args Transmettez ces arguments d'exécution à chaque nouveau processus. Ce doit toujours être le dernier
argument lamexec. Cette option n'est pas valide sur la ligne de commande si un
le schéma d'application est spécifié.

DESCRIPTION


lamexec est essentiellement un clone du mpirun(1), mais est destiné aux programmes non-MPI.

Une invocation de lamexec démarre une application non-MPI s'exécutant sous LAM. Pour démarrer le
même programme sur tous les nœuds LAM, l'application peut être spécifiée sur le lamexec commander
ligne. Pour démarrer plusieurs applications sur les nœuds LAM, un schéma d'application est requis
dans un fichier séparé. Voir schéma d'application(5) pour une description de la syntaxe du schéma d'application,
mais il contient essentiellement plusieurs lamexec lignes de commande, moins le nom de la commande elle-même.
La possibilité de spécifier différentes options pour différentes instanciations d'un programme est
une autre raison d'utiliser un schéma d'application.

Localisation Nomenclature
La nomenclature de localisation utilisée pour la mention de la clause where dans le SYNOPSIS
la section ci-dessus est identique à mpirunla nomenclature de (1). Voir le mpirun(1) page de manuel pour
une longue discussion sur la nomenclature des emplacements.

Notez que la syntaxe par CPU, bien que valide pour lamexec, n'est pas aussi significatif car
l'ordre des rangs des processus dans MPI_COMM_WORLD n'est pas pertinent. Ainsi, la nomenclature par nœuds
est généralement la syntaxe préférée pour lamexec.

Candidature Programme or Exécutable Programme?
Pour distinguer les deux formes différentes, lamexec recherche sur la ligne de commande les nœuds ou le
-c option. Si ni l'un ni l'autre n'est spécifié, le fichier nommé sur la ligne de commande est supposé être
être un schéma d'application. Si l'un ou les deux sont spécifiés, le fichier est supposé
être un programme exécutable. Si les nœuds et -c les deux sont spécifiés, puis des copies du
sont démarrés sur les nœuds spécifiés selon une politique d'ordonnancement LAM interne.
La spécification d'un seul nœud force effectivement LAM à exécuter toutes les copies du programme en une seule
endroit. Si -c est donné, mais pas les nœuds, alors tous les nœuds LAM sont utilisés. Si les nœuds sont donnés,
mais pas -c, une copie du programme est exécutée sur chaque nœud.

Programme Transferts
Par défaut, LAM recherche des programmes exécutables sur le nœud cible où un
l'instanciation s'exécutera. Si le système de fichiers n'est pas partagé, les nœuds cibles sont
homogène et que le programme est fréquemment recompilé, il peut être pratique d'avoir LAM
transférer le programme d'un nœud source (généralement le nœud local) vers chaque nœud cible. Les
-s L'option spécifie ce comportement et identifie le nœud source unique.

Localisation Fichiers
LAM recherche un programme exécutable en cherchant dans les répertoires du PATH de l'utilisateur
variable d'environnement telle que définie sur le(s) nœud(s) source(s). Ce comportement est cohérent avec
se connecter au nœud source et exécuter le programme à partir du shell. Sur les nœuds distants,
les "." chemin est le répertoire personnel.

LAM recherche un schéma d'application dans trois répertoires : le répertoire local, la valeur
de la variable d'environnement LAMAPPLDIR, et laminstalldir/boot, où "laminstalldir" est
le répertoire où LAM/MPI a été installé.

Standard I / O
LAM dirige l'entrée standard UNIX vers /dev/null sur tous les nœuds distants. Sur le nœud local qui
invoqué lamexec, l'entrée standard est héritée de lamexec. La valeur par défaut est ce qui était
l'option -w pour éviter les conflits d'accès au terminal.

LAM dirige la sortie standard UNIX et l'erreur vers le démon LAM sur tous les nœuds distants. LAM
envoie toutes les sorties/erreurs capturées au nœud qui a invoqué lamexec et l'imprime sur le
sortie standard/erreur de lamexec. Les processus locaux héritent de la sortie/erreur standard de
lamexec et y transférer directement.

Ainsi, il est possible de rediriger les E/S standard pour les applications LAM en utilisant le
procédure de redirection du shell sur lamexec.

% laexec N my_app my_input my_output

La -f L'option évite toute la configuration requise pour prendre en charge les E/S standard décrites ci-dessus.
Les processus distants sont complètement dirigés vers /dev/null et les processus locaux héritent du fichier
descripteurs de agneau (1).

Pseudo-tty Support
La -pty l'option a activé la prise en charge du pseudo-tty pour la sortie du processus. Cela permet, entre autres
choses, pour la sortie en mémoire tampon de ligne des nœuds distants (ce qui est probablement ce que vous voulez).

Cette option n'est pas actuellement la valeur par défaut pour lamexec car il n'a pas été à fond
testé sur une variété d'Unix différents. Les utilisateurs sont encouragés à utiliser -pty et signaler tout
problèmes à l'équipe LAM.

Courant Working : un espace de travail commun Annuaire
Le répertoire de travail actuel pour les nouveaux processus créés sur le nœud local est hérité
de lamexec. Le répertoire de travail actuel pour les nouveaux processus créés sur les nœuds distants est
le répertoire personnel de l'utilisateur distant. Ce comportement par défaut est remplacé par le -D option.

La -D L'option changera le répertoire de travail actuel des nouveaux processus dans le répertoire
où réside l'exécutable avant que le programme du nouvel utilisateur ne soit appelé.

Une alternative à la -D l'option est la -wd option. -wd permet à l'utilisateur de spécifier un
répertoire de travail courant arbitraire (par rapport à l'emplacement de l'exécutable). Notez que le
-wd peut être utilisée dans les fichiers de schéma d'application (voir schéma d'application(5)) également.

Processus Environment
Les processus de l'application héritent de leur environnement du démon LAM sur le nœud
sur lequel ils s'exécutent. L'environnement d'un démon LAM est fixé au démarrage du
LAM avec agneau(1) et est hérité du shell de l'utilisateur. Sur le nœud d'origine, cela
être la coquille d'où agneau(1) a été invoqué et sur les nœuds distants, ce sera le shell
commencé par rsh(1). Lors de l'exécution d'applications liées dynamiquement qui nécessitent le
variable d'environnement LD_LIBRARY_PATH à définir, il faut veiller à ce qu'elle soit
correctement réglé lors du démarrage du LAM.

Exporté Environment Variables
La -x Option de lamexec peut être utilisé pour exporter des variables d'environnement spécifiques vers le nouveau
processus. Alors que la syntaxe du -x option permet la définition de nouvelles variables, note
que l'analyseur syntaxique de cette option n'est actuellement pas très sophistiqué - il ne
comprendre les valeurs citées. Il est conseillé aux utilisateurs de définir des variables dans l'environnement et d'utiliser
-x les exporter ; de ne pas les définir.

EXEMPLES


lamexec SUBST prog1
Chargez et exécutez prog1 sur tous les nœuds. Recherchez le fichier exécutable sur chaque nœud.

lamexec -c 8 prog1
Exécutez 8 copies de prog1 partout où LAM souhaite les exécuter.

lamexec n8-10 -v -nw -s n3 prog1 -- -q
Chargez et exécutez prog1 sur les nœuds 8, 9 et 10. Recherchez prog1 sur le nœud 3 et transférez
vers les trois nœuds cibles. Faites un rapport au fur et à mesure que chaque processus est créé. Donnez "-q" comme
ligne de commande à chaque nouveau processus. N'attendez pas la fin des processus pour
sortant lamexec.

lamexec -v monapplication
Analysez le schéma d'application, myapp et démarrez tous les processus qui y sont spécifiés. Signaler
à mesure que chaque processus est créé.

lamexec NN -pty -wd /workstuff/output -x DISPLAY run_app.csh
Exécutez l'application "run_app.csh" (supposément un script shell C) deux fois sur chaque nœud dans
le système (idéal pour les SMP bidirectionnels). Activez également la prise en charge des pseudo-tty, changez de répertoire
vers /workstuff/output, et exportez la variable DISPLAY vers les nouveaux processus (peut-être
le script shell invoquera une application X telle que xv pour afficher la sortie).

lamexec -np 5 -D `mot de passe`/mon_application
Un usage courant de lamexec dans des environnements où un système de fichiers est partagé entre tous
nœuds dans le multi-ordinateur, à l'aide de la commande "pwd" échappée du shell, spécifie le
nom de l'exécutable à exécuter. Cela évite d'avoir à mettre le répertoire dans
le chemin; les notes distantes auront un nom de fichier absolu à exécuter (et modifier
répertoire à l'appel).

DIAGNOSTIC


lamexec : erreur de format d'exécution
Un caractère non ASCII a été détecté dans le schéma de l'application. Il s'agit généralement d'un
erreur d'utilisation de la ligne de commande où lamexec attend un schéma d'application et un
fichier exécutable a été fourni.

lamexec : erreur de syntaxe dans le schéma de l'application, ligne XXX
Le schéma d'application ne peut pas être analysé en raison d'une erreur d'utilisation ou de syntaxe sur le
ligne donnée dans le fichier.

nom de fichier : aucun fichier ou répertoire de ce type
Cette erreur peut se produire dans deux cas. Soit le fichier nommé ne peut pas être localisé, soit il a
trouvé mais l'utilisateur n'a pas les autorisations suffisantes pour exécuter le programme ou
lire le schéma de l'application.

RETOUR VALEURE


lamexec renvoie 0 si tous les processus démarrés par lamexec sortir normalement. Une valeur non nulle est
renvoyé si une erreur interne s'est produite dans lamexec, ou si un ou plusieurs processus se sont arrêtés
anormalement. Si une erreur interne s'est produite dans lamexec, le code d'erreur correspondant est
revenu. Dans le cas où un ou plusieurs processus se terminent avec un code de sortie différent de zéro, le
valeur de retour du processus qui lamexec les premiers avis décédés anormalement seront retournés.
Notez que, en général, ce sera le premier processus qui est mort mais il n'est pas garanti qu'il
être ainsi.

Cependant, notez que si le -nw switch est utilisé, la valeur de retour de lamexec ne
indiquer l'état de sortie des processus lancés par celui-ci.

Utiliser lamexec en ligne à l'aide des services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

Commandes Linux

Ad