wiki:IPSLCM4_v2_PAR

Version 102 (modified by mafoipsl, 17 years ago) (diff)

--

IPSLCM4_v2 configuration

Table des matières

Différences IPSLCM4_v1 et IPSLCM4_v2

Résumé des différences entre IPSLCM4_v1 (IPCC) et IPSLCM4_v2

Modèles

  • LMDZ4 V3 1
  • ORCHIDEE 1.9.1
  • LMDZ et ORCHIDEE en parallèle par défaut
  • Pas de différence pour OPA
  • Des nouveaux poids ont été générés pour fermer le bilan d'eau

Outils et environnement

  • nouveaux scripts (libIGCM v 0.9). Voir Documentation libIGCM
    • Possibilité de faire les simulations par bloc d'une année : Mettre PeriodLength=1Y dans le fichier EXP00/config.card
  • Gestion de modipsl par SVN. Attention! accès différent.
  • Gestion de la configuration IPSLCM4_v2 par SVN (fichiers d'entrée : AA_make, PARAM, COMP, ...)
  • Compilation de LMDZ par FCM. Voir le site officiel de FCM
  • OASIS3 (Attention! changement de format des fichiers)
  • Lancement de l'exécution par MPI-1 (par défaut maintenant) ou MPI-2 (ancienne technique peu portable)
  • IOIPSL v2_1_1 géré par SVN
  • Lorsque les post-traitements sont lancés (paramètre SeasonalFrequency=10Y de config.card) les fichiers sont mis sur les serveurs http://dodsp.idris.fr/ et/ou http://dods.extra.cea.fr/data/ tous les 10 ans.

Documentation

  • Le cours est accessible en ppt et en pdf
  • L' accès à la configuration IPSLCM4_v2 est décrit dans la documentation libIGCM
  • Le mémo des commandes à passer pour accéder, compiler et lancer une simulation IPSLCM4_v2 est aussi

Calculateurs

  • Tests sur brodie (IDRIS), mercure (CCRT vectoriel) et platine (CCRT scalaire: 8, 16 et 24 cpus)
  • Validations sur 10 ans au moins sur brodie et mercure

Validation

  • 4 résolutions différentes sont proposées :
    • ORCA2xLMD7245
    • ORCA2xLMD9671 (par défaut)
    • ORCA2xLMD14496
    • ORCA2xLMD144142
    • Une cinquième résolution est en cours : ORCA2xLMD4443
  • Validation de la résolution ORCA2xLMD9671 :
    • Les paramètres physiques par défaut sont ceux de la simulation : PDCTLV2 (site MC2)
    • Attention Penser à vérifier la cohérence entre les dates de la simulation et les aérosols. Modifier readsulfate.F en conséquence. Voir exemple là
    • Travail de réglage encore en cours
  • Les autres résolutions sont disponibles pour information et des essais sont en cours.
  • Conservation de l'eau vérifiée pour les résolutions 96x71, 144x96 et 144x142

Qualité

  • Résultats identiques mercure-brodie pour la résolution ORCA2xLMD9671.
  • Initialisation des variables à "nan" pour LMDZ sur mercure et brodie.
  • Nombre d'erreurs permises avant plantage mis à 0 sur mercure et brodie.

Tag Posé le 17 octobre 2007

Tag IPSLCM4_v2_1 posé sur la configuration IPSLCM4_v2

  • Le Tag IPSLCM4_v2_1 a été posé ce 17 octobre 2007. Voir détail des commandes passées dans le ticket:20
  • Les tests ont été systématiquement faits sur mercure et brodie sur 4 processeurs. Les tests ont démarré sur platine (CCRT, Bull) sur 8, 16 et 24 processeurs.
  • Le modèle récupéré permet une simulation type 2L20 ou PDCTLV2. Voir le site MC2 pour PDCTLV2
    • Attention! Vérifier :
      • la cohérence entre les dates de simulation dans config.card (1001 01 01)
      • et LMDZ4/libf/phylmd/readsulfate.F
        <       IF (iyr .lt. 1850) THEN
        <          cyear='.nat'
        ---
        >       IF (iyr .lt. 4850) THEN
        >          cyear='1980'
        

Tests réalisés depuis juillet 2007 avec la version IPSLCM4_v2

Résolution 96x71

  • La configuration IPSLCM4_v2 est en cours de validation/vérification :
    • Vérification dite de l'été
      • 10 ans sur mercure et brodie sur 4 (3 pour LMDZ/ORCHIDEE + 1 pour OASIS/OPA) et 6 (5+1) processeurs, depuis états initiaux (sans restart), avec atlas et post-traitements.
      • Simulation à comparer à 2L24 ?
      • Anciens poids
      • Exemple inclus dans la documentation libIGCM
      • Cours revu 2007 (pdf)
      • Nouveauté (23 août 2007) : Il y a 4 processeurs par défaut. Pour modifier le nombre de processeurs, changer dans config.card le paramètre JobNumProcTot, juste avant de lancer la commande ins_job.
      • Plus nécessaire depuis le 23 août 2007 mais utile pour vérification. Pour avoir 4 processeurs en tout (3 pour LMDZ/ORCHIDEE et 1 pour OASIS/OPA successivement), il faut mettre à 4 le paramêtre PBS_NUM_PROC_TOT dans le Job :
        #PBS -v PBS_NUM_PROC_TOT=4
        
    • Vérification octobre 2007
      • tag LMDZ4_V3_1 et orchidee_1_9_1
      • poids v4 pris sur compte commun IDRIS
      • 10 ans sur brodie
      • Voir atlas 1ère décennie là
      • Reste à vérifier les fichiers de sortie de LMDZ
  • Les tests de Sébastien Denvil avec IPSLCM4_v2 en parallèle sont sur mercure et brodie (PDCTLV1, PDCTLV2, PDCTLV3, PDCTLV4).
    • Ces tests sont la continuité des runs FH décrits dans la page wiki climatology et ont vocation à permettre l'équilibrage du modèle avec le nouvel Orchidée en incluant les améliorations liés à la conservation de l'eau.
    • Tests réalisés avec IPSLCM4_v2. PDCTLV3 et PDCTLV4 ont des sources modifiées pour fmagic (libf/phylmd/albedo.F).
    • On utilise les nouveaux poids, le correctif cvl_corr et les dernières modifications de Olivier dans OPA/SRC_ORCA/flxrnf.F (--> idem HH20D).
    • Tests avec les *.def de FH13 et ceux de 2L20, avec et sans l'utilisation du fmagic. Le fmagic est issu de tests réalisés en mode forcé LMDZ4OR par Josefine Ghattas.
Experience Machine *.def fmagic Accès aux résultats
PDCTLV1 Mercure FH13 1.0 PDCTLV1
PDCTLV2 Mercure 2L20 1.0 PDCTLV2 Réglage retenu pour tag IPSLCM4_v2
PDCTLV3 Brodie FH13 1.17 PDCTLV3
PDCTLV4 Brodie 2L20 1.17 PDCTLV4
  • Tests comparables à HH202 et VV202, nouveaux poids v4, même IPSLCM4_v2, aérosols constants 1980 :
    • 2L202 avec cvl_corr=1.02
    • 2L202B avec cvl_corr=1.00 Garder cette valeur pour la résolution 96x71
  • Tableau des vérifications :
Machine nb procs Execution 10 ans Mémoire Temps CPU Temps réel Temps rebuild Post-traitements Accès atlas 10 ans
Mercure 3 procs 2 ans 1 an en 2h20mn, estimation pour 10 ans : 24h 3.5 gb 1 300 s/mois 10 mn/mois <1 mn
Mercure 4 procs OK (manque fichiers sechiba) 10 ans en 16 h 4.1 gb 1 500 s/mois 8 mn/mois 1 mn OK (sauf SRF) 1860_1869
Mercure 6 procs OK 10 ans en 22 h 4.7 gb 1 900 s/mois 6 mn/mois 1 mn OK 1860_1869
Brodie 4 procs OK 10 ans en 23 h 4.1 gb 1 600 s/mois 9 mn/mois 2 mn 4ème relance ... 1860_1869
Brodie 6 procs OK 10 ans en 26 h 4.7 gb 2 000 s/mois 8 mn/mois 4 mn OK 1860_1869

  • Fichiers résultats :
    • Faut-il sauvegarder les fichiers histrac? Non
  • Atlas
    • IDRIS :
      • Problème récurrent sur rhodes : Exceeds the processor limit value of 2 processors, using 3(ou 4) processors. Réglé le 23 août 2007. Voir par exemple : la modif dans MO2SE
      • Pour ouvrir les accès dods. Il faut actuellement passer les commandes suivantes :
         rhodes : cd $HOMEGAYA/IGCM_OUT/IPSLCM4_v2/JobName
         rhodes : chmod -R ugo+rX *
         rhodes : rlogin gaya
         gaya : cd IGCM_OUT/IPSLCM4_v2/JobName/ATLAS
         gaya : dods_cp SE* DODS/pub/monlogin/JobName/ATLAS
        
    • Mercure :
      • Manque les sorties sechiba. Corrigé depuis mais absent de cette simu.
      • Pour ouvrir les accès dods, il faut actuellement passer les commandes suivantes :
         mercure : cd $DMFDIR/IGCM_OUT/IPSLCM4_v2/JobName/ATLAS
         mercure : dods_cp SE* public/monlongin/JobName/ATLAS/
        
  • Performances rebuild (correctes).
  • Equilibrage de charge :
    • Pour optimiser l'équilibrage entre les processeurs, on peut utiliser le fichier : Bands_96x71x19_3prc.dat.
    • On passe de 520 s de temps elapsed par mois de simulation à 480 s.
    • Dans run.def, ajouter : adjust=n
    • Ajouter dans COMP/lmdz.card :
      List=   ...
              (${SUBMIT_DIR}/PARAM/Bands_96x71x19_3prc.dat, .), \
      ...
      
  • Détail des performances sur brodie :
    • 4 processeurs en tout (#PBS -v PBS_NUM_PROC_TOT=4)
      $ jar 
      DATE  QUEED START    END      USER    NQSID REQNAME  QUEUE  SYS-CPU  USER-CPU ELAPS MAXMEM   MFLOPS 
      Jul27 14:16 27/14:16 27/14:32 rpsl003 79746 V5PAR4A  p4t1     58.30   1959.00   969   4115  2422.69 (1 mois)
      Jul27 14:32 27/14:33 27/14:45 rpsl003 79774 V5PAR4A. p4t1     67.29   1650.55   747   3731  2808.20 
      Jul27 14:45 27/14:46 27/14:58 rpsl003 79796 V5PAR4A. p4t1     53.55   1740.28   755   3731  2693.33 
      Jul27 15:45 27/15:45 27/17:31 rpsl003 79884 V5PAR4A  p4t2    346.50  15661.05  6367   3732  2725.76 (12 mois)
      Jul31 12:11 31/12:12 31/14:38 rpsl003 85421 V5PAR4A  p4t2    444.43  20192.57  8768   4115  2818.98 
      Jul31 14:38 31/14:39 31/16:51 rpsl003 85610 V5PAR4A. p4t2    437.25  19813.50  7958   3732  2860.91 
      Jul31 16:51 31/16:52 31/19:15 rpsl003 85840 V5PAR4A. p4t2    447.04  20095.13  8584   3732  2810.98 
      Jul31 19:15 31/19:15 31/21:34 rpsl003 86018 V5PAR4A. p4t2    458.18  20249.79  8323   3732  2788.00 
      Jul31 21:34 31/21:34 31/23:52 rpsl003 86201 V5PAR4A. p4t2    437.25  19806.21  8249   3732  2850.05 
      Aug01 02:07 01/02:07 01/04:19 rpsl003 86513 V5PAR4A. p4t2    429.75  19431.98  7905   3732  2906.21 
      Aug01 04:19 01/04:20 01/06:40 rpsl003 86648 V5PAR4A. p4t2    421.27  19532.56  8367   3732  2886.10 
      Aug01 08:57 01/08:59 01/11:12 rpsl003 86908 V5PAR4A. p4t2    443.13  19773.71  7967   3732  2856.36 
      
    • 6 processeurs en tout (#PBS -v PBS_NUM_PROC_TOT=6)
      $ jar 
      DATE  QUEED START    END      USER    NQSID REQNAME  QUEUE  SYS-CPU  USER-CPU ELAPS MAXMEM   MFLOPS 
      Jul27 12:50 27/12:50 27/13:07 rpsl003 79636 V5PAR6   p6t1     64.21   2363.78  1014   4691  2012.56 (1 mois) 
      Jul27 13:07 27/13:07 27/13:27 rpsl003 79662 V5PAR6.2 p6t1     57.73   1871.88  1162   4292  2504.26 
      Jul27 13:27 27/13:27 27/13:39 rpsl003 79683 V5PAR6.3 p6t1     62.05   1959.52   723   4292  2395.86 
      Jul27 13:39 27/13:39 27/13:56 rpsl003 79701 V5PAR6.4 p6t1     59.98   1858.24  1007   4292  2523.05 
      Jul27 14:17 27/14:18 27/14:30 rpsl003 79748 V5PAR6.6 p6t1     60.39   1858.15   729   4292  2532.87 
      Jul27 14:30 27/14:31 27/14:43 rpsl003 79770 V5PAR6.7 p6t1     60.08   1855.22   708   4292  2522.69 
      Jul27 15:05 27/15:05 27/15:26 rpsl003 79822 V5PAR6.9 p6t1     62.51   2013.15  1273   4292  2330.72 
      Jul27 19:50 27/19:50 27/22:12 rpsl003 80248 V5PAR6.2 p6t2    489.94  24106.43  8500   4292  2356.16 (12 mois)
      Jul28 02:50 28/02:51 28/05:06 rpsl003 80731 V5PAR6.5 p6t2    475.42  23233.19  8153   4292  2439.10 
      Jul28 07:20 28/07:20 28/09:30 rpsl003 81014 V5PAR6.8 p6t2    469.04  22176.01  7824   4292  2555.10 
      Jul28 14:12 28/14:12 28/14:34 rpsl003 81414 V5PAR6.1 p6t2     98.51   3746.33  1329   4292  2493.26 (1 mois)
      

Résolution 144x96

HH202

  • Test de IPSLCM4_v2
  • Brodie : /workdir/rech/psl/rpsl003/HH20_v2
  • Stoppé à 51 ans (07/1910). Voir STOP in hydrolc_waterbal" dans le fichier $HOMEGAYA/IGCM_OUT/IPSLCM4_v2/HH202/CPL/Debug/HH202_19100701_19100730_out_oasis. 12/09/2007 : Poursuivi avec : check_waterbal ligne 39 de hydrolc placé à .FALSE. Idem sur VV202.
  • Résolution 144x96
  • Modifications pour cette résolution :
    • LMDZ4 :
      • filtrez : LMDZ4/libf/filtrez/parafilt.h
         c 144 96 19 non-zoom:
               PARAMETER (nfilun=16, nfilus=16, nfilvn=16, nfilvs=16)
        
    • Compilation :
      • job.comp : gmake lmdz14496
  • Simulation : idem HH20D : Climatology
    • Redémarrage depuis HHSTART, date = 20901230, ancien script, fichiers stockés là : /u/rech/ces/rces452/SORTIES_CPL_IPSL. Utilisation de Config.card.OldName.
    • modifications dans les sources :
      • readsulfate : LMDZ4/libf/phylmd/readsulfate.F ligne 106-107 pour faire un contrôle actuel
         IF (iyr .lt. 4850) THEN
             cyear='1980'
        
      • physiq : LMDZ4/libf/phylmd/physiq.F décommenter ligne 49, c#define histhf pour avoir les sorties HF
        #define histhf
        
    • modifications dans les fichiers d'entrée :
      • PARAM/physiq.def pour les GES
              > co2_ppm = 348.
              > CH4_ppb = 1650.
              > N2O_ppb = 306.
              > CFC11_ppt = 280.
              > CFC12_ppt = 484.
        
      • PARAM/physiq.def pour le paramêtre correctif de la convection :
        cvl_corr=1.02
        
    • Nouveaux poids (v4) :
      • _v4 dans COMP/oasis.card pour tous les fichiers BoundaryFiles
      • dans namcouple_ORCA2xLMD14496, changer le nombre de voisins pour les interpolations Mozaic. Passer de 15, 27, 6, 47 à 15, 27, 333, 48
      • Augmenter la mémoire dans le Job : 9 gb
    • Test sur 6 processeurs en tout dont 5 pour LMDZ/ORCHIDEE (#PBS -v PBS_NUM_PROC_TOT=6). Nouveauté : dans config.card, mettre JobNumProcTot=6
      • -q multi et PBS_NUM_PROC_TOT=6
  • Tableau des performancess :
Machine nb procs Nom Execution Mémoire Temps CPU Temps réel Temps rebuild Post-traitements Accès atlas 10 ans
Brodie 6 procs (5 pour LMDZ) HH202_SANS_HF 1 an sans histhf 7.5 gb 4 400 s/mois 17 mn/mois 5-6 mn/mois (TMPDIR)
HH202_SANS_HF 2ème année sans histhf 4 700 s/mois 19 mn/mois 8 mn (WORKDIR)
HH202 1 an avec histhf reconstruit 7.5 gb 4 400 s/mois 17 mn/mois 45 mn/mois (TMPDIR)
HH202 10 ans (avec histhf stocké mais non reconstruit) en 2 jours 7.5 gb 4 400 s/mois 17 mn/mois 7 mn/mois (TMPDIR) OK après modif -l mpp_p A partir de la 4ème décennie : ATLAS
2 procs (LMDZ en mono) HH202M 10 ans en 5 jours 3.8 gb 3 400 s/mois 56 mn/mois 0 OK ATLAS
  • Détail des performances sur brodie :
    • 6 processeurs en tout (#PBS_NUM_PROC_TOT=6) :
      $ jar 
      DATE  QUEED START    END      USER    NQSID REQNAME  QUEUE  SYS-CPU  USER-CPU ELAPS MAXMEM   MFLOPS 
      Aug08 10:33 08/10:35 08/11:15 rpsl003 97129 HH202    p6t2     88.21   5739.94  2412   7412  2489.40 (1er mois TMPDIR)
      Aug08 11:15 08/11:15 08/11:43 rpsl003 97173 HH202.2  p6t2     93.22   5029.62  1676   7092  2810.14 (1 mois TMPDIR)
      Aug08 12:39 08/12:39 08/14:57 rpsl003 97272 HH202    p6t2    341.89  27649.29  8299   6916  3164.37 (6 mois WORKDIR) 
      Aug08 15:26 08/15:26 08/15:53 rpsl003 97462 HH202    p6t2    364.23   4636.17  1567   6916  2952.63 (1 mois)
      Aug08 17:31 08/18:26 08/21:14 rpsl003 97602 HH202    p6t2   2225.39  29311.92 10078   6916  2801.75 (6 mois)
      

Résolution 144x142

VV20B (ex VV20_2)

  • brodie : /workdir/rech/psl/rpsl003/VV20_v2/
  • renommé VV20B, le _ dans les noms de simulations empêche les outils MC2 de fonctionner.
  • 30 ans réalisés sur brodie
    • Performances :
      • entre 45 et 66 mn de temps elapsed par mois simulés
      • rebuild : environ 90 mn de temps elapsed (intenables). Voir informations précises là : RebuildPerformances
    • 10 ans pour voir l'équilibre
      • Plantage sur point océan à salinité négative (83,98) en 1860/09 louche car au premier pas de temps océan.
      • Resoumis au delà de 1860/09. Passé. 25 ans au 20 août 2008.
  • Job :
    • Tests avec (#PBS -v PBS_NUM_PROC_TOT=6). Nouveauté : dans config.card, mettre JobNumProcTot=6
    • Mémoire : 10gb
  • Modifications pour cette résolution :
    • LMDZ4 :
      • filtrez : LMDZ4/libf/filtrez/parafilt.h
        PARAMETER (nfilun=24, nfilus=23, nfilvn=24, nfilvs=24)
        
    • Compilation :
      • job.comp : gmake lmdz144142
  • Expérience :
    • VV20_2
    • Arrêtée à 30 ans compte tenu des performances de rebuild.
    • A comparer directement à VV20 : Climatology
    • Etats initiaux :
      • Atmosphère : create_etat0_limit
      • Orchidée : rien
      • Océan : V0START, 30/12/2090
  • nouveaux poids (_v4)
    • Voir infos détaillées sur les nouveaux poids là : NouveauxPoids
    • Job (R_BC_TEST=/u/rech/ces/rces452/IGCM/BC)
    • COMP/oasis.card (${R_BC_TEST} et _v4)
    • Changer le nombre de voisins. Voir PARAM/namecouple_ORCA2xLMD144142_v4. 30 devient 32 et 7 devient 513.
    • La mémoire augmente aussi. (0.5 GB environ)
  • OPA :
    • modifier OPA/SRC_ORCA/flxrnf.F
  • LMDZ :
    • readsulfate : LMDZ4/libf/phylmd/readsulfate.F ligne 106-107 pour faire un contrôle actuel
       IF (iyr .lt. 4850) THEN
           cyear='1980'
      
    • physiq : LMDZ4/libf/phylmd/physiq.F décommenter ligne 49, c#define histhf pour avoir les sorties HF
      #define histhf
      
    • COMP/lmdz.card :
      • ajouter sauvegarde fichier histrac dans COMP/lmdz.card
      • ajouter sauvegarde fichier Bands_144x142x19_5prc.dat pour équilibrage charge processeurs
        • nécessitera adjust=y dans gcm.def quand le fichier existera
      • modifier physiq.def :
        • les GES
           > co2_ppm = 348.
           > CH4_ppb = 1650.
           > N2O_ppb = 306.
           > CFC11_ppt = 280.
           > CFC12_ppt = 484.
          
        • et le paramêtre correctif de la convection :
          cvl_corr = 1.019
          
      • Modifier la liste des fichiers de sorties pour ne pas recombiner histHF (trop lent) /
        [OutputFiles]
        List=   ...
                (histhf_0000.nc,       ${R_OUT_ATM_O_H}/${PREFIX}_HF_histhf_0000.nc,       NONE), \
                (histhf_0001.nc,       ${R_OUT_ATM_O_H}/${PREFIX}_HF_histhf_0001.nc,       NONE), \
                (histhf_0002.nc,       ${R_OUT_ATM_O_H}/${PREFIX}_HF_histhf_0002.nc,       NONE), \
                (histhf_0003.nc,       ${R_OUT_ATM_O_H}/${PREFIX}_HF_histhf_0003.nc,       NONE), \
                (histhf_0004.nc,       ${R_OUT_ATM_O_H}/${PREFIX}_HF_histhf_0004.nc,       NONE), \
        ...
        
        
  • performances sur brodie
    • 6 processeurs en tout (#PBS -v PBS_NUM_PROC_TOT=6). Nouveauté : dans config.card, mettre JobNumProcTot=6 :
      $ jar 
      DATE  QUEED START    END      USER    NQSID REQNAME  QUEUE  SYS-CPU  USER-CPU ELAPS MAXMEM   MFLOPS 
      Jul05 18:46 05/18:46 05/20:02 rpsl003 44143 VV20DP6. p6t2    105.40   7037.79  4552   9220  2677.88
      
  • Sur mercure :
    • VV202
    • Idem VV20_2, bascule sur mercure pour avoir histHF recombiné dans le flot de l'exécution.
    • Stoppé à 41 ans (08/1901). Voir STOP in hydrolc_waterbal" dans le fichier $HOMEGAYA/IGCM_OUT/IPSLCM4_v2/HH202/CPL/Debug/HH202_19100701_19100730_out_oasis. 12/09/2007 : Poursuivi avec : check_waterbal ligne 39 de hydrolc placé à .FALSE. Idem HH202.
    • Stoppé en 1908/03 : STOP in hgardfou avec 25 points imprimés.
      • Manip de /2 des tetaxx sur le mois et c'est reparti.
      • Tests sur un mois de rugoros à 0 et prints des mêmes points. Suivi avec F Hourdin.
    • Stoppé en 1914/02. STOP dans integrd + Print du point avec psol négatif : Au point ij = 844 , pression sol neg. -62590.88734727436
    • Erreurs :
      • Message à l'exécution :
        ****  96 Loop count is greater than that assumed by the compiler : loop-count=5946 eln=3709 PROG=routing.routing_fetch ELN=3711(400af3ca0) 
        
      • Augmenter loopcnt pour la compilation d'Orchidee et le vérifier en regardant le listing dans le fichier i.routing.L. Dans modeles/ORCHIDEE/src_sechiba/Makefile :
         F_O = .... -R5 -Wf"-pvctl fullmsg noassume loopcnt=40000 -L summary"
        

Machine nb procs Nom Execution Mémoire Temps CPU Temps réel Temps rebuild Post-traitements Accès atlas 10 ans
Brodie 6 procs (5 pour LMDZ) VV20_2 30 ans 10 gb 5 500 s/mois 22 mn/mois 10 mn/mois (sans histHF) OK ATLAS
Mercure 6 procs (5 pour LMDZ) VV202 10 ans en 4 jours 12 gb 5 700 s/mois 22 mn/mois (sans adjust=y dans run.def) 2 mn/mois (avec histHF) OK ATLAS

Mise en place de la configuration IPSLCM4_v2

IPSLCM4_v2_PAR (CVS)

Cette configuration a été mise en place pour faire des tests. Elle n'est pas entretenue.

  • Mise en place de la compilation de LMDZ et ORCHIDEE en parallèle :
    • configuration de test, mise en place sous cvs, pas entretenue.
    • ORCHIDEE :
      • activer le préprocesseur (option -eP)
      • activer la clé CPP CPP_PARA
      • Question : doit-on garder les listings de compilation
    • LMDZ :
      • makegcm_fcm .... -parallel false ... pour create_etat0_limit.e
      • makegcm_fcm ... - parallel true ... pour gcm.e
      • Cette méthode entraine la compilation en double de LMDZ. Comment l'éviter? Nécessaire pour create_etat0
    • OASIS et OPA : pas de changement
  • Exécution :
    • Le script est basé sur le script de première génération
    • La commande rebuild est lancée sur les machines de calcul
    • L'exécution demande 6 processeurs : 4 pour LMDZ-ORCHIDEE, 1 pour OASIS, 1 pour OPA. Ceci sera réglé ultérieurement

  • FAQ :
    • Comment changer le nombre de processeurs pour LMDZ et ORCHIDEE? Variable PBS (PBS_NUM_PROC_TOT utilisé dans le job. Voir libIGCM/AA_job)
    • error psol<0. Se rencontre lors d'un redémarrage depuis un restart produit par LMDZ (IPCC). Du à une différence double/float NetCDF dans les fichiers Restart, changé depuis IPCC.

IPSLCM4_v2 (SVN)

  • Mise en place de la configuration IPSLCM4_v2 dans modipsl (géré par svn). Voir la version en cours de vérification [ IPSLCM4_v2 enregistrée sous SVN.
  • Modifications/Etapes? :
    • libIGCM chez l'utilisateur OK
    • nouveaux scripts - Voir la doc utilisateur OK
    • gestion des post-traitements OK
    • configuration gérée par SVN OK
    • accès par modipsl (SVN) OK
    • tests mercure et brodie OK
    • recommandations sur le nombre de processeurs et performances OK
    • réglages paramètres d'entrée : PDCTLV2 + 2L20. Attention aux aérosols. A vérifier
    • sources OPA : flxrnf. A vérifier
  • Voir détail des commandes à passer plus loin
  • Attention : Par défaut, la version de LMDZ4 recupérée est la version HEAD qui n'est donc pas tagguée. Les commits réalisés apres le 19/07/2007/17h40 n'ont pas été testés dans cette configuration IPSLCM4_v2. tag LMDZ4_V3_1 mis en place le 5/10/2007. OK
  • Il y a 2 problèmes pour la compilation sur BRODIE/IDRIS :
    • Il n'y a pas assez de mémoire pour compiler physiq.F dans LMDZ4. Pour cela il faut compiler LMDZ4 en batch. C'est inclus dans la procédure AA_make de brodie. OK
    • Sur l'espace WORKDIR il y en plus un problème qui se produit quand on alterne la compilation en batch et en interactif. On n'a pas ce problème sur le HOME. Problème résolu en mettant /bin/pwd partout au lieu de $PWD ou pwd. OK
    • OASIS n'était pas compilable en batch. Il fallait enchainer compilation en interactif d'OASIS et en batch de LMDZ. Résolu le 24 Septembre 2007. OK
    • Compilation sur brodie :
      ins_make
      cd .../modipsl/config/IPSLCM4_v2
      gmake 
      
    • Compilation sur brodie pour une autre résolution à choisir parmi : ORCA2xLMD7245, ORCA2xLMD9671 (Defaut) , ORCA2xLMD14496, ORCA2xLMD144142:
      ins_make
      cd .../modipsl/config/IPSLCM4_v2
      gmake RESOL=ORCA2xLMD14496
      

Commands to access, compile and run IPSLCM4_v2

Par défaut, la compilation de LMDZ et ORCHIDEE active le mode parallèle.

PATH=$PATH:/TXlocal/pub/svn/svn-1.3.1/bin:/home/rech/psl/rpsl035/fcm/bin  # IDRIS only
PATH=$PATH:/home/p86ipsl/fcm/bin  # MERCURE only
mkdir MY_EXPER 
cd MY_EXPER
svn co http://forge.ipsl.jussieu.fr/igcmg/svn/modipsl/trunk modipsl
cd modipsl/util
./model IPSLCM4_v2
./ins_make
cd ../config/IPSLCM4_v2
gmake (or gmake ORCA2xLMD144142 sur mercure or gmake RESOL=ORCA2xLMD144142 sur brodie ) 
# 
# sur brodie attendre la fin du job 
#

# job customization
vi EXP00/config.card  # definir le nom de l'experience à lancer dans le fichier config.card (par defaut JobName=L01). Si besoin changer le nombre de processeurs (par defaut JobNumProcTot=4).
../../util/ins_job

cd EXP00
pwd # .../modipsl/config/IPSLCM4_v2/EXP00

# job verification
# check config.card, (DateBegin, DateEnd and restart option) 
# check Job_JobName (PBS options : time and memory, DRYRUN, NbPeriod)
qsub Job_JobName

Commands to access, modify and commit IPSLCM4_v2 CONFIG files (CARD, PARAM) on SVN

Il faut avoir les droits en écriture cad avoir un compte ouvert (USER) sur le serveur forge.ipsl.jussieu.fr et qu'il soit enregistré dans le projet igcmg. Voir : Jacques Bellier, Marie-Alice Foujols ou Martial Mancip.

mkdir REPERTOIRE_TEMPORAIRE
cd REPERTOIRE_TEMPORAIRE
svn co svn+ssh://USER@forge.ipsl.jussieu.fr/ipsl/forge/projets/igcmg/svn/CONFIG/trunk/IPSLCM4_v2 IPSLCM4_v2
...
... modifs
...
svn ci -m 'MESSAGE EXPLICATIF'

How to be informed when IPSLCM4_v2 files are commited

Il suffit de s'enregistrer sur la liste de messagerie: igcm-dev@…

Voir : http://forge.ipsl.jussieu.fr/mailman/listinfo/igcmg-dev

Erreurs/Remèdes?

Messages liés à la compilation

Message d'erreur Remède
fcm: Command not found. Modifier la variable PATH pour avoir accès à la commande fcm (Voir 2.1.1)
./i.physiq.f: f90 fatal: Limitation : memory could not allocate. Sur brodie : soumettre la compilation en batch
" Voulez-vous vraiment continuer?" apparait dans le listing de compilation batch de LMDZ sur brodie Effacer le fichier .lock de LMDZ : rm ../../modeles/LMDZ4/.lock puis reprendre la compilation

Messages lors de l'exécution

Message d'erreur Remède
ALLOCATE failed Augmenter la mémoire demandée par le job. #PBS -l memsz_job=6.0gb
IGCM_sys_Cp : error. cp /workdir2/rech/psl/rpsl003/V7/modipsl/config/IPSLCM4_v2/EXP00/PARAM/gcm.def_ gcm.def cp: ERROR: Cannot access /workdir2/rech/psl/rpsl003/V7/modipsl/config/IPSLCM4_v2/EXP00/PARAM/gcm.def_: No such file or directory Le fichier .resol n'existe pas. Sur brodie ne pas oublier de conclure la compilation avec gmake ORCA2xLMD9671 pour le créer
FATAL ERROR FROM ROUTINE restget / --> The time step requested for variable day_counter / --> is not available in the current file Mettre SECHIBA_reset_time=y dans orchidee.def
96 Loop count is greater than that assumed by the compiler : loop-count=5946 eln=3709 PROG=routing.routing_fetch ELN=3711(400af3ca0) Augmenter le parametre loopcnt lors de la compilation d'ORCHIDEE. modeles/ORCHIDEE/src_sechiba/Makefile F_O = .... -R5 -Wf"-pvctl fullmsg noassume loopcnt=40000 -L summary"
EXECUTION of : mpirun -np 1 -max_np 5 ./oasis > out_oasis 2>&1 %NQSII(INFO): Batch job received signal SIGXCPU. (Exceeded cpu limit) Ce message arrive sur brodie quand on a dépassé le temps CPU. Vérifier qu'aucun fichier pour le mois courant (PeriodDateEnd= 1861-11-30) n'existe sur le serveur de fichiers, augmenter le temps limite dans le Job (#PBS -l cputim_job=20:00:00 sur brodie), mettre PeriodState=OnQueue dans run.card et resoumettre le job
le parametre nfilun utilise pour la matrice matriceun est trop petit ! Le changer dans parafilt.h et le mettre a 16. Pour information, nfilun,nfilus,nfilvn,nfilvs doivent etre egaux successivement a 16 16 16 16 arrive à la résolution 144x96 si on n'a pas adapté le fichier LMDZ4/libf/filtrez/parafilt.h

Messages lors des post-traitements

Message d'erreur Remède
--Debug1--> Time Series Job already running exit Soit c'est vraiment le cas, soit changer le paramêtre TimeSeriesRunning=n dans run.card (le passer de y à n) et resoumettre avec DRYRUN=3 pour n'avoir que les post-traitements. Voir aussi la doc utilisateur libIGCM paragraphe 2.3.5
Exceeds the processor limit value of 2 processors, using 3 processors. resoumettre les post-traitements. Parfois jusqu'à 4 fois!

Questions

Questions/Réponses?

Restart IPSLCM4_v1

Redémarrage depuis des fichiers créés par un couplé IPSLCM4_v1

  • Ce type de redémarrage est prévu. Voir complément d'information :
    • Modification des noms des répertoires et des noms de fichiers sur les serveurs de fichiers
    • Modification du format des fichiers Oasis : passage Oasis 2.4 à Oasis 3

Restart IPSLCM4_v1_OASIS3

Redémarrage depuis des fichiers créés par un couplé IPSLCM4_v1_OASIS3

  • Ce type de redémarrage est prévu. Voir complément d'information :
    • Modification des noms des répertoires et des noms de fichiers sur les serveurs de fichiers

Contrôle Qualité

Contrôle Qualité du couplé IPSLCM4_v2

Comparaison Mono Multi

Comparaison des résultats en mono et en parallèle

  • Résultats identiques 1, 3 et 4 CPUs atmosphère :
    • 2x5 jours de simulation ORCA2xLMD9671
    • mercure, brodie

Comparaison Portage

Comparaison des résultats sur différentes machines

  • Résultats identiques mercure-brodie :
    • tests réalisés le 23/10/2007. Compilateurs FORTRAN90/SX Rev.360 sur mercure et brodie
    • 2x5 jours de simulation ORCA2xLMD9671
    • Vérification sur les valeurs de solver.stat de l'océan.
  • Octobre 2007 - test avec tags orchidee_1_9_1 et LMDZ4_V3_1
Machine nb procs Execution 10 ans Mémoire Temps CPU Temps réel Temps rebuild Post-traitements Accès atlas 10 ans
Brodie 4 procs OK 10 ans en 23 h 4.1 gb 1 600 s/mois 9 mn/mois 11 mn OK 1860_1869

Comparaison Redémarrage

Comparaison des résultats avec et sans redémarrage