LPBS

Logiciel capture d'écran:
LPBS
Détails logiciels:
Version: 0.9.0
Date de transfert: 15 Apr 15
Développeur: Michael Goerz
Licence: Gratuit
Popularité: 85

Rating: nan/5 (Total Votes: 0)

OPL (système Batch Portable local) est un outil pour émuler PBS sur un poste de travail local.
PBS / COUPLE est un système de planification de l'emploi qui est utilisé sur de nombreux clusters de calcul haute performance. Le paquet OPL fournit des outils pour exécuter des scripts de job PBS sur un poste de travail local. Plus précisément, OPL fournit la commande de lqsub qui prend les mêmes options que la commande de la PBS et exécute un script de l'emploi au niveau local, dans un environnement pratiquement identique à celui qui PBS / COUPLE fournirait. Le travail sera exécuté en arrière-plan et être affecté d'un ID de travail. Contrairement au système PBS, OPL ne exécute aucune planification, mais simplement exécuter le travail qui lui est soumis. OPL fournit d'autres outils pour gérer les tâches en cours d'exécution.
Installation
OPL peut être installer à partir Pypi, en utilisant
pip installer OPL
Alternativement, le package peut être installé à partir des sources avec
python setup.py install
Configuration
OPL stocke toutes ses données de configuration et d'exécution dans le dossier figurant dans la variable d'environnement $ LPBS_HOME. Cette variable d'environnement doit être définie. La configuration est dans le fichier lpbs.cfg l'intérieur $ LPBS_HOME. Se il ne existe pas lorsque l'un des scripts OPL sont exploités ce fichier, un fichier de configuration avec les valeurs par défaut suivantes sera créé:
[Serveur]
# Hôte complet du serveur de présentation (de hostname.domain). Sera disponible
# À l'exécution de travail grâce à l'PBS_SERVER variable d'environnement. ID d'emplois finiront
# Dans le nom du serveur
hostname: localhost
domaine: locale
[Node]
# Hôte complet du nœud d'exécution (hostname.domain). Sera disponible
# À l'exécution de travail grâce à l'PBS_O_HOST variable d'environnement. Depuis OPL est
# Conçu pour exécuter des emplois au niveau local, les paramètres ici devraient en général
# Identiques à celles de la section [serveur]
hostname: localhost
domaine: locale
[OPL]
# Configuration pour l'exécution du travail.
# Si 'username_in_jobid' est activée, le numéro du travail auront la forme
# 'Seqnr.user.hostname.domain »où« utilisateur »est le nom de l'utilisateur
# Soumettant le travail.
# Le fichier indiqué dans 'sequence_file »est utilisé pour garder la trace de la« seqnr'
# Apparaissant dans l'ID du travail.
# Le fichier indiqué dans 'fichier journal »est utilisé pour se connecter tous les événements OPL. Les deux
# 'Sequence_file »et« fichier journal' sont liés à $ LPBS_HOME.
username_in_jobid: 0
sequence_file: séquence
fichier journal: lpbs.log
[Scratch]
# Les paramètres pour l'espace de travail fourni à l'emploi. 'Scratch_root' définit un
# Endroit où les emplois devraient écrire des données temporaires. Si donné comme un chemin relatif,
# Ce est par rapport à $ LPBS_HOME. Les variables d'environnement seront élargies à la
# Moment de la soumission de travaux.
# Si la valeur de # 'create_jobid_folder' est fixé à 1, un dossier avec le nom de
# L'ID complète du poste est créé à l'intérieur scratch_root. Ce dossier est automatiquement
# Supprimé lorsque le travail se termine, à moins que 'keep_scratch' est mis à 1. Si le travail
# Échoué, le zéro ne sera pas supprimé, sauf si 'delete_failed_scratch' est réglé
# De 1.
scratch_root: $ SCRATCH_ROOT
create_jobid_folder: 0
keep_scratch: 0
delete_failed_scratch: 0
[Notification]
# Les paramètres sur la façon dont l'utilisateur doivent être avisés des événements tels que le début
# Et la fin d'un travail. Si sent_mail est mis à 1, les e-mails seront envoyés pour
notifications # Selon la valeur de l'option '-m' pour lqsub. Si
# 'Send_growl' est fixé à 1, Growl (http://growl.info) est utilisé pour la notification
# Sur MacOS X. Notifications via Growl ne prend pas en compte les options "-m"
# Lors de la soumission de l'emploi.
send_mail: 0
send_growl: 0
[Mail]
# paramètres SMTP pour les notifications d'email. e-mails de notification seront envoyés à partir de
# L'adresse indiquée par l'option 'de'. Le serveur SMTP figurant dans les 'smtp' est
# Utilisé pour envoyer les e-mails, si «authentifier» est mis à 1, l'authentification est
# Fait avec le 'username' donné et 'mot de passe'. Si "TLS" est une, le chiffrement TLS
# Sera utilisé.
à partir de: nobody@example.org
smtp: smtp.example.com:587
nom d'utilisateur: mode
mot de passe: secrète
authentifier: 0
TLS: 1
[Growl]
# Les paramètres pour les notifications Growl. Les notifications sont envoyées soit
# Localhost ou un hôte distant via le protocole GNTP. Le réglage 'hostname'
# Donne l'adresse et le port du serveur de Growl, le 'mot de passe' est donnée
# Utilisé pour l'authentification (à noter que si l'envoi à localhost, pas
# Authentification est nécessaire, et le mot de passe doit être vide). Si
# «Collantes» est réglé sur 1, les notifications Growl sera collante. C'est
# Possible d'envoyer des notifications à plus d'un hôte. Dans ce cas, à la fois
# 'Hostname' et 'mot de passe' doit être une liste de valeurs séparées par des virgules, avec
# Chaque élément correspondant à un hôte. Par exemple
# Hostname: localhost, remotehost
# Mot de passe: secret
hostname: localhost: 23053
mot de passe:
collant: 0
[Connexion]
# "Fichier journal" donne le nom du fichier central de journal, par rapport à $ LPBS_HOME.
fichier journal: lpbs.log
Notez que si le fichier de configuration par défaut est utilisée, la variable d'environnement $ SCRATCH_ROOT doit être défini et le dossier qu'il doit exister et être accessible en écriture à tous les utilisateurs qui pourraient soumettre des travaux.
Pour une installation de l'ensemble du système, / var / OPL est un endroit approprié pour $ LPBS_HOME. La variable d'environnement peut être réglée dans /etc/bash.bashrc pour tous les utilisateurs. Pour une installation dans l'espace utilisateur, virtualenv est recommandée.
Une fois le fichier de configuration principal, le fichier $ HOME / .lpbs.cfg sera également lu. Un utilisateur peut utiliser pour remplacer les paramètres dans la configuration du système. Enfin, la commande qsub a également une option --config qui permet de préciser encore un fichier de configuration supplémentaire pour être lu.
Utilisation
OPL contient les scripts lqsub, lqstat et lqdel, qui émulent la PBS / COUPLE commandes qsub, qstat et lqdel, respectivement. La commande lqsub est utilisé pour soumettre des travaux, lqstat est utilisé pour afficher des informations sur les emplois en cours d'exécution, et lqdel est utilisé pour annuler des emplois en cours d'exécution. Par exemple:
Goerz @ localhost: ~> lqsub job.pbs
3.localhost.local
Goerz @ localhost: ~> lqstat
Id emploi Nom utilisateur walltime
-------------------- --------------- --------------- ---------------
3.localhost.local pbstest Goerz 00:00:22
Goerz @ localhost: ~> lqstat -f 3.localhost.local
Job ID: 3.localhost.local
& Nbsp; JOB_NAME = pbstest
& Nbsp; Job_Owner = Goerz
& Nbsp; server = localhost.local
& Nbsp; EXEC_HOST = localhost.local
& Nbsp; PID = 14649
& Nbsp; Error_Path = STDERR
& Nbsp; Join_Path = True
& Nbsp; Mail_Points = n
& Nbsp; output_path = pbstest.out
& Nbsp; resources_used.walltime = 00:00:43
Goerz @ localhost: ~> lqdel 3.localhost.local
La commande qsub est conçu pour comprendre toutes les options de ligne de commande de la commande qsub en version COUPLE 2,18, sauf que toutes les options relatives à la programmation sont ignorés. Par conséquent, tous les script de travail PBS devrait pouvoir être remis sans changement. Pour plus de détails, lqsub fonctionner, lqstat et lqdel avec l'option --help, et / ou regarder le manuel de COUPLE.
Un script du travail Exemple
Ce qui suit est un exemple de script de travail PBS simple qui va imprimer l'environnement complet qui voit le travail. Vous pouvez soumettre le job à la fois avec OPL et PBS / COUPLE pour vérifier que des paramètres appropriés dans lpbs.cfg, OPL fournit un environnement identique OPL.
#! / Bin / bash
#PBS -N Pbstest
#PBS -j Oe
De #PBS les noeuds = 1: ppn = 1
#PBS -l Walltime = 00: 00: 10
#PBS -l Mem = 10mb
#PBS -o Pbstest.out
echo "################################################ #### "
echo ": $ PBS_O_LOGNAME"
echo "traitement par lots a débuté le $ PBS_O_HOST"
echo "PBS Job ID: $ PBS_JOBID"
echo "PBS nom de travail: $ PBS_JOBNAME"
echo "répertoire de travail PBS: $ PBS_O_WORKDIR"
echo "Travail commencé sur" hostname` `` date`
echo "répertoire actuel:" `pwd`
echo "environnement PBS: $ PBS_ENVIRONMENT"
echo "################################################ #### "
echo "################################################ #### "
echo "Environnement complet:"
printenv
echo "################################################ #### "
echo "Le travail est en cours d'exécution sur le nœud suivant:"
cat $ {} PBS_NODEFILE
echo "################################################ ########## "
echo "travail fini:" `date`
exit 0

Exigences :

  • Python

Logiciel similaire

OpenCDN
OpenCDN

3 Jun 15

mrjob
mrjob

20 Feb 15

python-hostlist
python-hostlist

20 Feb 15

PRUN
PRUN

17 Feb 15

Commentaires à LPBS

Commentaires non trouvées
Ajouter un commentaire
Tourner sur les images!