Utilisation des VO locales

Des VO locales sont utilisables par les membres des laboratoires membres de GRIF

  • vo.lpnhe.in2p3.fr au LPNHE Paris
  • vo.lal.in2p3.fr au LAL Orsay
  • vo.llr.in2p3.fr au LLR Palaiseau
  • vo.ipno.in2p3.fr à l’IPN d’Orsay
  • vo.apc.in2p3.fr à l’APC de Paris
  • vo.irfu.cea.fr à l’IRFU de Saclay

Par la suite on utilisera le nom générique =vo.locale.fr=. Veuillez adapter à vos besoins.

Quelle machine Interface Utilisateur ?

Des machines Interface Utilisateur (UI) sont installées dans chaque laboratoire :

  • lpnui.in2p3.fr au LPNHE Paris
  • au LAL Orsay
  • au LLR Palaiseau
  • à l’IPN d’Orsay
  • à l’APC de Paris
  • à l’IRFU de Saclay

Vous devez en particulier y installer votre certificat, comme expliqué dans la section Comment démarrer ?.

Quelles ressources de calcul ?

L’ensemble des CE (Element de Calcul) des sites GRIF est accessible. Veuillez taper la ligne de commande suivante:

#lcg-infosites –vo vo.locale.fr ce

qui vous indiquera pour chaque CE, son nom, le nombre de CPU total, le nombre actuellement disponible (Free) et les nombres de taches totales, en cours et en attente (par exemple):

#   CPU       Free    Total Jobs    Running    Waiting    ComputingElement
—————————————————————-
      0          0             0          0          0    apcce01.in2p3.fr:2119/jobmanager-pbs-lpnhe
    240        238             0          0          0    apcce02.in2p3.fr:8443/cream-pbs-lpnhe
    704         34             0          0          0    grid10.lal.in2p3.fr:2119/jobmanager-pbs-lpnhe
    704         34             0          0          0    grid36.lal.in2p3.fr:8443/cream-pbs-lpnhe
    780         74             0          0          0    ipngrid04.in2p3.fr:8443/cream-pbs-lpnhe
    780         74             0          0          0    ipnls2001.in2p3.fr:2119/jobmanager-pbs-lpnhe
    980         43             0          0          0    llrcream.in2p3.fr:8443/cream-pbs-lpnhe
    801         95             0          0          0    lpnce.in2p3.fr:2119/jobmanager-pbs-lpnhe
    801          2             0          0          0    lpnhe-cream.in2p3.fr:8443/cream-pbs-lpnhe
   2196         14             0          0          0    node07.datagrid.cea.fr:2119/jobmanager-lcgpbs-lpnhe
     12         12             0          0          0    node16.datagrid.cea.fr:2119/jobmanager-pbs-lpnhe
   2196         14             0          0          0    node74.datagrid.cea.fr:8443/cream-pbs-lpnhe
    980        108             0          0          0    polgrid1.in2p3.fr:2119/jobmanager-pbs-lpnhe

Quelles ressources de stockage ?

Quelques SE (Element de Stockage) des sites GRIF sont accessibles – en fait une toute petite partie correspondant à un cache. Veuillez taper la ligne de commande suivante:

#lcg-infosites –vo vo.locale.fr se

qui vous indiquera pour chaque SE, son nom, son type, la place disponible et la place utilisée (par exemple):

     59350301894     29264037776  SRM      grid05.lal.in2p3.fr
       981292014       176284599  SRM      lpnse1.in2p3.fr
     10231270954     15638185093  SRM      polgrid4.in2p3.fr

Utilisation de APCScheduler

L’outil APCScheduler permet de simplifier un grand nombre d’étapes de l’utilisation de la grille :

    prendre la version la plus à jour ici. La mettre sur l’UI et la "détarrer" (tar -xvf)

  • initialiser l’outil avec ./apcgrid-init (il vous demandera votre VO, votre adresse etc)
  • suivre les instructions du wiki et envoyer un job de test (Hello World
  • un exemple pour calculer la valeur de pi :

    Créer le fichier pi.py suivant :

    #!/bin/env python

    import random

    nmax=100000000l
    random.seed()
    n=0
    for i in range(nmax):
        x=random.random()
        y=random.random()
        if x*x+y*y<1:
            n=n+1
    print "estimation de pi : ",n*4./nmax

    L'exécuter avec :
    # apcgrid-run ./pi.py –em

  • Un exemple plus complet

    Créer le fichier loop.py
    #!/bin/env python

    from APCScheduler import *

    # work directory
    SetRepository('/home/user/apcgrid/loop2')
    SetVerboseLevel(2)
    SetMail('myname@myadress')

    # specifie my gLite scheduler
    MyGLITE = SchedulerGLITE()
    MyGLITE.LoadBalancingCE()

    # define a run ie a set of job
    Run = MultiJobsClass('Mytest')

    for i in range(10):   
        MyExe = AppliExe('./pi2.py')
        ii=i*10
        MyExe.SetArg('%d'%ii)
        Job = JobClass(MyExe, MyGLITE)  
        Run.Append(Job)

    Run.SubmitAndWaitAll(MaxRunning=200)
    Run.SendMailResult()

    et le fichier pi2.py suivant :
    #!/bin/env python

    import sys
    import random

    nmax=int(sys.argv[1])
    random.seed()
    n=0
    for i in range(nmax):
        x=random.random()
        y=random.random()
        if x*x+y*y<1:
            n=n+1

    print "estimation de pi : ",n*4./nmax

    Exécuter le tout avec
    # ./loop.py

  • suivre les instructions du wiki pour d'autres exemples

Utilisation d’outils de soumission plus complexes

Les expériences auprès du LHC, parties prenantes du projet WLCG, ont développé des outils permettant le calcul distribué et le placement de données. Ceux-ci peuvent être adaptés à d’autres besoins

  • PANDA a été développé par ATLAS. C’est un espace de travail pour la gestion des tâches et le placement de données, qui utilise des tâches pilotes pour s’assurer de la disponibilité de machines pour effectuer les analyses futures.
  • DIRAC (Distributed Infrastructure with Remote Agent Control) est une solution générique pour l’envoi de tâches de calcul et le placement de données sur la grille, développé par l’expérience LHCb. Il possède des plugins spécifiques à LHCb mais qui n’ont pas besoin d’être installés. Il fonctionne avec Ganga.
  • Ganga Ganga est une application pour les utilisateurs leur permettant un envoi aisé de tâches de calcul et de placement de données développé par ATLAS et LHCb. Il est implémenté en python. Il ne gère pas la distribution des tâches et le placement de données sur la grille. Pour ce faire il utilise les Workload Management System, PANDA ou DIRAC.

Comments are closed.