= Soumission d'un job d'analyse athena/DQ2 avec pathena = [[PageOutline]] Ce tutoriel décrit comment executer un job d'analyse en utilisant: * pathena * Le software d'ATLAS athena * Un package d'analyse à compiler (Merci à Annick Lleres). * Des fichiers de dataset obtenus avec DQ2. Pour lancer un job, vous avez besoin d'un fichier * '''L'archive du package''' SingleTopDPDMaker.tgz contenant le package d'analyse à compiler.[[BR]] Le package fourni produit des DPD à partir d'AOD. == Prérequis == * [wiki:setupAthenaLocal Préparer votre environnement] comme pour un job à lancer en local (cmthome, testarea...) * [wiki:setuppathena Installez et configurez l'outil de soumission de job pathena.] == Le fichier joboptions == {{{ sh-3.00$ cd /atlas/lambert/testarea/14.2.21/SingleTopDPDMaker/run sh-3.00$ ls dashboard.log gangascript.py log_debug PoolFileCatalog.xml.BAK SingleTopD3PD.root exeSingleTopDPDMaker.py log_athena_test PoolFileCatalog.xml runSingleTopDPDMaker_FDR2.py }}} Placez vous dans le répertoire run. Vous devez y trouver les fichiers joboptions runSingleTopDPDMaker_FDR2.py et exeSingleTopDPDMaker.py [[BR]] Vous n'avez rien à modifier, pathena analyse vos job options automatiquement. == Initialisation de l'environnement d'exécution dans pathena == Une fois votre package pathena obtenu de CVS et compilé, vous n'avez plus qu'à faire un source du fichier setup.sh.[[BR]] Bien sûr vous devez auparavant initialiser l'environnement athena (voir prérequis) {{{ sh-3.00$ source /swareas/atls/prod/releases/rel_14-5/CMT/v1r20p20080222/mgr/setup.sh sh-3.00$ source ~/cmthome/setup.sh -tag=14.2.21,setup sh-3.00$ source ~/testarea/14.2.21/PhysicsAnalysis/DistributedAnalysis/PandaTools/cmt/setup.sh }}} == Lancer le job == Pour lancer votre job vous devez taper une commande où vous précisez quelles données vous mettez en entrée et quelles données vous voulez produire en sortie. {{{ sh-3.00$ pathena --inDS fdr08_run2.0052280.physics_Egamma.merge.AOD.o3_f8_m10 --outDS user08.FabianLambert.panda.0052280.20081112 --site IN2P3-LPSC_DATADISK --split 6 --nEventsPerJob 100 runSingleTopDPDMaker_FDR2.py extracting run configuration ConfigExtractor > Input=POOL ConfigExtractor > Output=THIST AANT archive sources archive InstallArea post sources/jobO query files in dataset:fdr08_run2.0052280.physics_Egamma.merge.AOD.o3_f8_m10 Could not get the # of events from MetaDB for fdr08_run2.0052280.physics_Egamma.merge.AOD.o3_f8_m10 Enter the number of events per file : 100 submit =================== JobID : 124 Status : 0 > build PandaID=19093559 > run PandaID=19093560-19093565 }}} Cette ligne d'instruction mérite quelques explications : [[BR]] * --inDS : Le LDN du dataset de donnée en entrée de votre job. * --outDS : Le nom du dataset de sortie dans lequel pathena va stocker vos fichiers. Attention, la nomenclature impose que vos dataset commence par user08. * --site : Le nom du site ou se trouve les données, afin que votre job soit envoyé sur le CE associé. * --split : Le nombre de sujobs a faire tourner. Ici 6 car le dataset à analyser contient 6 fichiers, pathena va donc "répartir" les taches d'analyse sur plusieurs WN * --nEventsPerJob : Le nombre d'évenements à traiter au maximum par subjobs Pour obtenir l'ensemble des options disponibles, tapez ''pathena --help'' ou regardez [wiki:setuppathena cette page]. == Suivre l'état d'avancement du job == Quand le job est soumis, pathena lui affecte un PandaID. Dans notre cas nous avons plusieurs PandaID car plusieurs sous-job on été lancé.[[BR]] Le premier identifiant (PandaID=19093559) correspond au "pilot job". C'est un job qui va compiler votre package d'analyse et vérifier qu'il n'y a pas d'erreurs.[[BR]] Si ce premier job s'exécute sans erreur, vos jobs d'analyse seront ensuite lancés, ils sont identifiés par la plage de PandaID qui suit (PandaID=19093560-19093565).[[BR]] Une fois le job lancé, vous pouvez suivre son état d'avancement sur la page de [http://gridui06.usatlas.bnl.gov:25880/server/pandamon/query Panda] De cette page, vous pouvez accéder aux informations sur votre job en cours de plusieurs façon : * En tapant le PandaID dans le (petit) champ texte "job" à gauche * En cliquant sur List Users en haut a droite, puis en trouvant votre nom dans la liste,et enfin en cliquant sur votre nom.[[BR]] [[Image(pandamon.gif)]] Vous devez alors obtenir une page ou vous pouvez suivre l'état d'avancement de vos jobs.[[BR]] Dans tous les cas, quand votre job se termine, vous devez recevoir un mail envoyé par le système Panda vous indiquant son statut final.[[BR]][[BR]] [[Image(pandamon2.gif)]] == Récuperer les données == Quand le statut du job est finished (i.e. tous les subjobs sont finished) vous pouvez récupérer le dataset crée avec dq2-get {{{ sh-3.00$ dq2-list-dataset "user08.FabianLambert.panda.0052280.20081112" user08.FabianLambert.panda.0052280.20081112 sh-3.00$ dq2-get user08.FabianLambert.panda.0052280.20081112 Querying DQ2 central catalogues to resolve datasetname user08.FabianLambert.panda.0052280.20081112 Datasets found: 1 user08.FabianLambert.panda.0052280.20081112: Querying DQ2 central catalogues for replicas... Querying DQ2 central catalogues for files in dataset... user08.FabianLambert.panda.0052280.20081112: Using site IN2P3-LPSC_USERDISK user08.FabianLambert.panda.0052280.20081112: Querying local file catalogue of site IN2P3-LPSC_USERDISK... ... }}} [wiki:tutopathena up]