sample image geoazur – villefranche-sur-mer - 29 mai 2009 tutorial : portage d'applications...
TRANSCRIPT
Sample Image
GeoAzur – Villefranche-sur-Mer - 29 Mai 2009
Tutorial : Portage d'applications sur la Grille
29/05/08 Portage d'une application sur la grille EGEE 2
Sommaire
Qu'est ce qu'une application Mécanisme sur d'execution sur la grille Gestion des données Références Exemples de job :
Mon premier job Job interactif Job SU Job Geocluster Job parallèle
Résumé des commandes Application GeoAzur
29/05/08 Portage d'une application sur la grille EGEE 3
Qu'est qu'une application
Entrée(s) Sortie(s)
Application
(0-n) Interaction(s)
Site 1
Site 4 Site… Site n
Site 2 Site 3
Tiers
UI
Box 1Box 1
Box 1WN
•Requètes
WMS
CE
•Réponses/Interactions
JDLjob
SE
LFC catalog
Mecanisme d'execution sur la grille
Exécution détaillé
29/05/08 Portage d'une application sur la grille EGEE
Fichier sur la grille
29/05/08 Portage d'une application sur la grille EGEE
Kereon
G-eclipse
29/05/08 Portage d'une application sur la grille EGEE
Possibilité avec EGEE
Jobs Sequentiel, Parallel, Interactif, Collection,
Parametric ,Realtime
Flot de jobs : Diagram Acyclique Graph (DAG)
Job pilot (DIANE)
Applications référencées :– http://appdb.eu-egee.org/– http://grid.ct.infn.it/egee_applications/
Projet RESPECT : http://technical.eu-egee.org/index.php?id=290
Possibilité avec EGEE
Gestion de données File transfer Service : FTS
https://twiki.cern.ch/twiki/bin/view/EGEE/FTS
Meta données : AMGA http://amga.web.cern.ch/amga/
Bases de données : GrelC http://grelc.unile.it/home.php
Encryption : Hydra https://twiki.cern.ch/twiki/bin/view/EGEE/DMEDS
29/05/08 Portage d'une application sur la grille EGEE
29/05/08 Portage d'une application sur la grille EGEE 11
Références
EGEE : http://www.eu-egee.org
Documentation utilisateur : https://edms.cern.ch/document/722398/
Documentation JDL : https://edms.cern.ch/file/555796/1/EGEE-JRA1-TEC-555796-JDL-Attributes-v0-8.pdf
Documentation MPI Grid : http://www.grid.ie/mpi/wiki
Utilisation de base de données : GrelChttp://grelc.unile.it
Documentation middleware : http://glite.web.cern.ch/glite/documentation/default.asp
Pré-requis
Avoir un certificat Appartenir à une VO ( EGEODE ) Avoir une application sous Linux (Unix) Avoir une UI accessible Avoir un site accessible
Mots clés : voms-proxy*, lcg-infosites
Mon premier job
Type = "job"; JobType = "normal"; VirtualOrganisation = "egeode"; Executable = "testjob.sh"; StdOutput = "testjob.out"; StdError = "testjob.err"; InputSandbox = {"./testjob.sh"}; OutputSandbox =
{"testjob.out","testjob.err"};
Job interactif avec glogin
Client serveur sur l'ui > glogin
-p 21439:84.14.104.247 Dans le repertoire du job :
cp `which glogin` . Job :
Executable = "glogin"; Arguments = "-r -t -p
21439:84.14.104.247"; InputSandbox ={ "glogin" };
Job SU
Wrapper script SU : su.sh Liste de fichiers entrées : inputlist.txt Liste de fichiers sorties : outputlist.txt Output : dans un fichier grille dans /grid/egeode/... Job :
Type = "job";
JobType = "normal";
VirtualOrganisation = "egeode";
Executable = "su.sh";
Arguments="/grid/egeode/gvetois/sutest anywhere ./PSimage_rgb";
StdOutput = "out";
StdError = "err";
InputSandbox = {"PSimage_rgb","su.sh","inputlist.txt","outputlist.txt"};
OutputSandbox = {"out","err","output.txt","su.log"};
MyProxyServer = "myproxy.grif.fr";
Requirements = Member("VO-egeode-SU-3.9",other.GlueHostApplicationSoftwareRunTimeEnvironment);
Job parallèle
Exemple hello world parallèle
JDL parallèle
Exécution parallèle ( MPI-TGC )
Exécution
Mots clés : JobType=MPICH, wrapper et hook, CpuNumber
Job Geocluster
Esub :- gsl au jdl- analyse et transfert de fichier- control le l’état du job- vérification licence et proxy- exécution local, grille et parallèle
29/05/08 Portage d'une application sur la grille EGEE
Résumé des commandes d'identification
Max 24h voms-proxy-info voms-proxy-init --voms egeode:/egeode -
valid 24:00 Max 7 jours
export MYPROXY_SERVER=myproxy.grif.fr myproxy-init -n myproxy-info 33 jours : myproxy-init -s myproxy.grif.fr -d -
n -t 48 -c 800 Dans le jdl :
MyProxyServer=”myproxy.grif.fr”;
Résumé des commandes de control
Fonction gLite
Soumettre un job glite-wms-job-submit [-d delegID] [-a] [-o joblist] jdlfile
Controller le status du job glite-wms-job-status [-v verbosity] [-i joblist] jobIDs
Obtenir des informations détaillé de l'execution
glite-wms-job-logging-info [-v verbosity] [-i joblist] jobIDs
Collecter les resultats du job glite-wms-job-output [--dir outdir] [-i joblist] jobIDs
Annuler un job glite-wms-job-cancel [-i joblist] jobID
Verification de syntaxe et disponibilité pour a job glite-wms-job-list-match [-d delegID] [-a] jdlfile
Deleger un proxy à une autre personne glite-wms-job-delegate-proxy -d delegID
Résumé des commandes de gestion de données
export LFC_HOST=lfc.egee.fr.cgg.comexport LCG_CATALOG_TYPE=lfc
Data Replica management :
lcg-*[cp,cr,del,rep,gt,sd] File Catalogue Interaction
lcg-*[aa,ra,rf,uf,la,lg,lr] File Calalog (MetaData)
lfc-* [chmod,chown,delcomment,getacl,ln,mkdir,rename,rm,setacl, setcomment, ...]
Detail lcg-* commandes
Replica Management
lcg-cp Copies a Grid file to a local destination (download)lcg-cr Copies a file to a SE and registers the file in the catalogue (upload)lcg-del Deletes one file (either one replica or all replicas)lcg-rep Copies a file from one SE to another SE and registers it in the catalogue (replicate)lcg-gt Gets the TURL for a given SURL and transfer protocollcg-sd Sets file status to "Done" for a given SURL in an SRM's request
File Catalogue Interaction
lcg-aa Adds an alias in the catalogue for a given GUIDlcg-ra Removes an alias in the catalogue for a given GUIDlcg-rf Registers in the catalogue a file residing on an SElcg-uf Unregisters in the the catalogue a file residing on an SElcg-la Lists the aliases for a given LFN, GUID or SURLlcg-lg Gets the GUID for a given LFN or SURL
Détail lfc-* commandes
lfc-chmod Change access mode of a LFC file/directorylfc-chown Change owner and group of a LFC file/directorylfc-delcomment Delete the comment associated with a file/directorylfc-getacl Get file/directory access control listslfc-ln Make a symbolic link to a file/directorylfc-ls List file/directory entries in a directorylfc-mkdir Create directorylfc-rename Rename a file/directorylfc-rm Remove a file/directorylfc-setacl Set file/directory access control listslfc-setcomment Add/replace a commentlfc-entergrpmap Defines a new group entry in the Virtual ID tablelfc-enterusrmap Defines a new user entry in Virtual ID tablelfc-modifygrpmap Modifies a group entry corresponding to a given virtual gidlfc-modifyusrmap Modifies a user entry corresponding to a given virtual uidlfc-rmgrpmap Suppresses group entry corresponding to a given virtual gid or group namelfc-rmusrmap Suppresses user entry corresponding to a given virtual uid or user name.
Application GeoAzur
Comprehension des scripts Determination des input/output Compilation des binaires Test unitaire Test de different compilateurs et
options Ecriture d'un script du workflow Utilisation de gEclipse
Compiler
29/05/08 Portage d'une application sur la grille EGEE
Quel compilateur : Gcc (4.3.2)/icc (11) gfortran(4.3.2)/ifc(10)
Options (32 ou 64bit !) : -O0 (defaut = pas d'optimisation ) -O2,-O3,...-static
Profiling code : -pg et gprof Utilisation de bibliothèque
mathèmatique : Blas,lapack ( mkl ),...
http://www.egee.nesc.ac.uk/schedreg/index.cfmD'autres formations :