wiki:IPSLCM6/IPSL-CM6A-LR

Version 131 (modified by lfairhead, 2 years ago) (diff)

--

IPSL-CM6A-LR

Model IPSL-CM6A-LR

  • Fixed on 25 mai 2018
  • See ticket #120
  • set for curie, modification required for ada

Change Log

  • 6.1.3 : 25 mai 2018
    • nouvelle revision LMDZ : ajout des parametres tau_gl et iflag_cycle_diurne pour AMIP
    • utilisation de la dernière version de dr2xml pour résoudre certains problèmes (nom et infos sur les axes, contournement de problèmes liés à la DR utilisée (nb de sections et ordre des sections ocean),...)
    • rangement des xml dans IGCM/CMIP6/IPSLCM6.1.3-LR/IPSL-CM6A-LR/NOM_DE_L_EXPERIENCE/MEMBRE
    • modifications sur les xml de NEMO pour modifier le nom des axes verticaux
    • utilisation d'une "DR maison" afin de garantir les sorties les plus importantes et pallier les eventuels ratés de la DR. A été validé par les composantes NEMO et ORCHIDEE (retour en cours sur des variables manquantes).
    • expériences disponibles :
      • les *_CMIP6 : piControl_CMIP6, piControl-spinup_CMIP6 and historical_CMIP6 (2009 en date de fin, documenter comment faire 2010-2014)
      • une nouvelle expérience piControl_TEST sans workflow CMIP6 pour tests qualités
    • Plus de dates dans les Restart du compte commun (1869, 1879, ...) du CM61-LR-pi-03
  • 6.1.2 : 2 mai 2018
    • ajouts diagnostics océan
    • DR2XML revus
      • XML disponibles pour piControl (500 ans) et historical
    • experiences disponibles en plus : historical_CMIP6
    • relance reproductible (N+1=+1).
      • dans opa9.card : Reproducibility_after_restart= y. To be changed manually.
      • Attention aux années bissextiles!
    • reproductibilité KO au bout de 57 ans
    • passage à la révision 3321 de LMDZ pour inclure les sorties par défaut des aérosols pour vérification des forçages. Les aérosols plume sont aussi intégrés
  • 6.1.1 : 13 avril 2018
    • compression (level=4) sur les fichiers IPSL Output/MO
    • ping modifiés avec des diagnostics en plus
    • reproductibilité KO au bout de 39 ans
    • piControl_CMIP6 OK
    • DR2XML à revoir (axes netcdf non géo-référencé)
  • 6.1.0 : 29 mars 2018
    • pas de compression sur les fichiers IPSL Output/MO
    • reproductibilité KO au bout de 1 ou 2 ans
    • piControl-spinup_CMIP6 OK

Documentation

Rappel du lien vers la documentation: http://forge.ipsl.jussieu.fr/igcmg_doc/wiki/Doc

Environment

curie

  • Compilateur 2017 (4h de compilation ...) à utiliser avec ces commandes à passer IMPERATIVEMENT avant de compiler ou à mettre dans votre .bashrc :
    module purge
    . /ccc/cont003/home/dsm/p86ipsl/.env_intel17.0.2_curie
    . /ccc/cont003/home/dsm/p86ipsl/.env_netcdf4.3.3.1_curie
    
    
  • RAPPEL sur les commandes à passer pour installer le modèle :
    mkdir YOUR_DIRECTORY ; cd YOUR_DIRECTORY
    svn_ano # svn co http://forge.ipsl.jussieu.fr/igcmg/svn/modipsl/trunk modipsl
    cd modipsl/util
    ./model IPSLCM6.1.3-LR 
    # si c'est la premiere fois : il faut trouver les 2 mots de passe ORCHIDEE et NEMO. 
    # Pour ORCHIDEE : voir la session "SVN et ORCHIDEE" du cours : https://forge.ipsl.jussieu.fr/orchidee/wiki/GroupActivities/Training
    # Pour NEMO : voir "Get NEMO code" là : https://www.nemo-ocean.eu/ qui pointe sur : http://forge.ipsl.jussieu.fr/nemo/wiki/Users.
    # Répondre (RETURN) puis le user puis le mot de passe.
    cd ../config/IPSLCM6
    gmake ... # attendre 4h . Pour garder la trace de la compilation : gmake 2>&1|tee compile.out
    ...
    cp EXPERIMENTS/IPSLCM/piControl_CMIP6/config.card . 
    vi config.card # modifications dates, restart, ... Voir checklist plus loin.
    ../../libIGCM/ins_job
    ... # répondre en donnant la sous-imputation cmip6 concernée.
    

Checklist

  • Avoir l'autorisation de commencer son MIP
  • Vérifier la nomenclature de la simulation : https://search.es-doc.org/
  • Choisir un nom (en prenant le préfixe CM61-LR) et le signaler sur la page MIP. Voir plus loin.
  • Vérifier le protocole : forcages, état de redémarrage choisi.
  • Décrire l'expérience sur la page MIP. Voir plus loin.
  • Demander rendez-vous à Sébastien Denvil et Arnaud Caubel pour construire et vérifier la disponibilité des fichiers DR2XML là : IGCM/CMIP6/IPSLCM6.1.3-LR/IPSL-CM6A-LR/NOM_DE_L_EXPERIENCE/MEMBRE
    • commencer à remplir les éléments descriptifs de la simulation en prenant exemple sur:

ciclad:/home/sdipsl/DataRequest.CMIP6/simulationSettings/settings_AOGCM_piControl_r1.py

  • Organiser de quoi faire une peer review avant le lancement de chaque expérience. Avec les personnes impliquées dans le MIP et avec, au moins, une personne du groupe plate-forme.
  • A faire systématiquement :
    • config.card
      • Mettre PROD dans config.card
      • S'assurer que ExpType dans config.card contienne le mot clé CMIP6 (dans le cas inverse la simulation part sans le workflow CMIP6 par exemple pour un test)
      • Mettre à jour Member=rXi1p1f1 (defaut : r1i1p1f1 A CHANGER)
      • Préciser DateBegin=1850-01-01, DateEnd=XXXX-12-31
      • Pour historical, s'arrêter en 2009 avant de faire les dernières années : 2010-2014.
      • Indiquer et documenter les Restart pris.
        • Préciser OverRule=y si toutes les composantes repartent d'une même simu à la même date.
        • Préciser, une fois si OverRule=y, ou pour chaque composante RestartDate=....-12-31, RestartJobName=CM61-pi... et RestartPath=/.../IPSLCM6/PROD/piControl
        • Repartir d'un état de redémarrage rebuildé (pour les composantes océan : OCE, ICE et MBG)et mis sur le compte commun. Voir : IGCM/RESTART/IPSLCM6/PROD/*/*
          • Au 24/5/2018 sont disponibles :
            • CM61-pre-pi-01 1849
            • CM61-LR-pi-03 18691231 18791231 18891231 18991231 19091231 19191231 19291231 19391231 19491231 19591231 19691231 19791231 19891231 19991231 20091231 20191231 20391231 20491231 20591231 20691231 20791231 20891231
        • Si besoin de coller à la simulation prise en restart mettre dans COMP/opa9.card : Reproducibility_after_restart= y
      • COMP :
        • vérifier l'existence des fichiers dr2xml
        • vérifier que les cards COMP/opa9.card, COMP/lmdz.card, COMP/orchidee.card utilisent ces fichiers dr2xml
    • Job
      • Mettre la sous-imputation du MIP concerné
        • Pour aerchemmip : checmip6 ou strcmip6, pour les autres : c4mcmip6 , cfmcmip6 , cm5cmip6 , daacmip6 , dcpcmip6 , dekcmip6 , dmrcmip6 , fafcmip6 , geocmip6 , gmmcmip6 , hircmip6 , ismcmip6 , ls3cmip6 , lumcmip6 , omicmip6 , pmicmip6 , rfmcmip6 , solcmip6 ou volcmip6
      • Pour connaître les sous-imputations cmip6 de votre login groups
        • Pour connaître les logins de toutes les sous-imputations cmip6 : getent group | grep cmip6: | cut -d : -f 1,4
    • Préciser la priorité intra CMIP6 :
      • -U high pour les simulations longues seulement (PiControl et PMIP)
      • -U medium par défaut
      • -U low pour les simulations en surbooking
    • Mettre postProcessingStopLevel=2 pour que le job principal s’arrête dès qu'un post-processing job s'est planté (=3 quand atlas seront OK)
    • Attention, pour les simulations type historical, vous avez besoin de monitorer les forçages liés aux aerosols dans votre expérience, il faut appliquer les patchs suivants
      • sur le fichier modeles/LMDZ/DefLists/file_def_histmth_lmdz.xml : http://web.lmd.jussieu.fr/trac/changeset?reponame=&new=3321%40LMDZ6%2Fbranches%2FIPSLCM6.0.15&old=3318%40LMDZ6%2Fbranches%2FIPSLCM6.0.15
      • sur le fichier COMP/lmdz.card : rajouter la liste de variables (topswad, toplwad, topswai, toplwai, topswad0, toplwad0, solswad, sollwad, solswai, sollwai, solswad0, sollwad0) dans le bloc [Post_1M_histmth] :
        [Post_1M_histmth]
        Patches= ()
        GatherWithInternal = (lon, lat, presnivs, time_counter, time_centered, time_centered_bounds, aire)
        TimeSeriesVars2D = (...,topswad, toplwad, topswai, toplwai, topswad0, toplwad0, solswad, sollwad, solswai, sollwai, solswad0, sollwad0,...)
        ChunckJob2D = NONE
        TimeSeriesVars3D = (temp, theta, ovap, geop, vitu, vitv, vitw, pres, rneb, rhum, paprs, ec550aer, concoa, concbc, concso4, concss, concdust)
        ChunckJob3D = 100Y
        Seasonal=ON
        
      • dans le fichier POST/monitoring01_lmdz.cfg, rajouter les lignes :
        topswai_forcing        | "topswai"               | "" | "topswai[d=1]"            | "AIE at TOA SW"                           | "W/m^2" | "aire[d=1]"
        solswai_forcing        | "solswai"               | "" | "solswai[d=1]"            | "AIE at SRF SW"                           | "W/m^2" | "aire[d=1]"
        topswad_forcing        | "topswad"               | "" | "topswad[d=1]"            | "ADE at TOA SW"                           | "W/m^2" | "aire[d=1]"
        solswad_forcing        | "solswad"               | "" | "solswad[d=1]"            | "ADE at SRF SW"                           | "W/m^2" | "aire[d=1]"
        topswad0_forcing       | "topswad0"              | "" | "topswad0[d=1]"           | "ADE at TOA SW ClearSky"                  | "W/m^2" | "aire[d=1]"
        solswad0_forcing       | "solswad0"              | "" | "solswad0[d=1]"           | "ADE at SRF SW ClearSky"                  | "W/m^2" | "aire[d=1]"
        toplwai_forcing        | "toplwai"               | "" | "toplwai[d=1]"            | "AIE at TOA LW"                           | "W/m^2" | "aire[d=1]"
        sollwai_forcing        | "sollwai"               | "" | "sollwai[d=1]"            | "AIE at SRF LW"                           | "W/m^2" | "aire[d=1]"
        toplwad_forcing        | "toplwad"               | "" | "toplwad[d=1]"            | "ADE at TOA LW"                           | "W/m^2" | "aire[d=1]"
        sollwad_forcing        | "sollwad"               | "" | "sollwad[d=1]"            | "ADE at SRF LW"                           | "W/m^2" | "aire[d=1]"
        toplwad0_forcing       | "toplwad0"              | "" | "toplwad0[d=1]"           | "ADE at TOA LW ClearSky"                  | "W/m^2" | "aire[d=1]"
        sollwad0_forcing       | "sollwad0"              | "" | "sollwad0[d=1]"           | "ADE at SRF LW ClearSky"                  | "W/m^2" | "aire[d=1]"
        
      • Important : ce patch implique un double appel au rayonnement et pénalise donc les performances en temps de calcul du modèle
  • Enregistrement des expériences sur svn CMIP6 là : browser:CMIP6
  • Pendant une simulation, il faut la suivre :

Le 3 mai 2018 à 15:30, Guillaume LEVAVASSEUR <glipsl@…> a écrit :

Je commence avec nctime:

Last release : 4.1.3 GitHub? : https://github.com/Prodiguer/nctime Docs : http://prodiguer.github.io/nctime HowTo? : https://github.com/Prodiguer/nctime/blob/master/notebooks/nctime-howto-ipsl.ipynb

  • Réunions type bocal régulières pour lancer ensemble les nouvelles simulations.
    • 16/03/2018 : création de cette page et liste des dernières actions
    • 23/03/2018 : 1e réunion bocal, explication du workflow (voir image suivante)
    • 18/04/2018 : 2e réunion bocal
    • 02/05/2018 : 3e réunion bocal : XML pour 1pctCO2 (150 ans) et abrupt4xCO2 (300 ans)
    • 09/05/2018 : 4e réunion bocal
    • 17/05/2018 : préparation des simulations à lancer avec 6.1.2 :
    • 24/05/2018 : préparation des simulations à lancer avec 6.1.3. Création tableau de travail collectif : doc : commentaires possibles

Procédure pur dépasser un hgardfou

Il peut arriver que le modèle atmosphèrique plante en simulant des températures hors d'un intervalle de validité. Dans ce cas là, le modèle se plantera avec un message du type

 i,k,temperature,lon,lat,pourc ter,lic,oce,sic =           2          15
   421.113420631975        75.0000000000000        36.7605633802817
   1.00000000000000       0.000000000000000E+000  0.000000000000000E+000
  0.000000000000000E+000
 in abort_physic
 Stopping in physiq
 Reason =
 Plantage hgardfou

 Houston, we have a problem, ierr =            1

On peut dépasser ce plantage par un effet papillon sur les fichiers restart du coupleur selon la procédure ci-dessous:

# On se place dans le répertoire contenant les fichiers restart CPL de la simulation qui a planté
# ici c'est la simulation CM61-LR-XXXX
cd /.../scratch/.../IGCM_OUT/IPSLCM6/PROD/.../CM61-LR-XXXX/CPL/Restart/
# On sauvegarde le fichier restart à modifier (au cas où ...)
cp CM61-LR-XXXX_19941231_sstoc.nc CM61-LR-XXXX_19941231_sstoc.nc.orig
# On n'oublie pas de modifier les droits sur le fichier à modifier, la procédure va ré-écrire dedans
chmod 644 CM61-LR-XXXX_19941231_sstoc.nc
# On rajoute un léger bruit sur la SST du restart pour que la simulation parte sur une trajectoire légèrement différente
/ccc/cont003/home/dsm/p86ipsl/AddNoise/src_X64_CURIE/bin/AddNoise CM61-LR-XXXX_19941231_sstoc.nc O_SSTSST 0.01
# On peut maintenant relancer la simulation par la procédure habituelle ...

Le workflow

Remplissage de curie

  • Lien vers le fichier détaillant la prévision d'occupation de la machine : commentaires possibles
  • A retenir :
    • Installer en machine dès que possible les simulations longues : piControl et PMIP
    • Etre prêts à lancer les simulations courtes et 100-200 ans
    • Lancer les simulations dès que possible en surveillant l'occupation :
      • Au delà de 20 000 coeurs d'utilisation, se mettre en low
    • En cas de besoin mettre quelques simulations MR en forcé

Quality check

6.1.3 : 25 mai 2018

Voir détails du contrôle qualité là : http://wiki.ipsl.jussieu.fr/Pole/ESCI/GT/IPSLCM6/ControleQualiteTechnique (Accès Intranet)

Résultats des tests pour IPSLCM6.1.3 : 25 mai 2018

Configuration IPSL-CM6-LR
Critère contrôlé Repro piControl (A1C=A2C) Restart (A1C=A3C) +1=+1 (A1C=A4C) Repro historique (H1C=H2C) Ada Couplage
Résultats OK OK OK
Commentaires toujours souci à plusieurs années) Toujours pas bon pour 1D+1D+...=5D Need in COMP/opa9.card Reproducibility_after_restart= y

6.1.2 : 27 avril 2018

Voir détails du contrôle qualité là : http://wiki.ipsl.jussieu.fr/Pole/ESCI/GT/IPSLCM6/ControleQualiteTechnique (Accès Intranet)

Résultats des tests pour IPSLCM6.1.2 : 27 avril 2018

Configuration IPSL-CM6-LR
Critère contrôlé Repro piControl (A1C=A2C) Restart (A1C=A3C) +1=+1 (A1C=A4C) Repro historique (H1C=H2C) Ada Couplage
Résultats OK OK OK
Commentaires Différences au bout de 57 ans ... Toujours pas bon pour 1D+1D+...=5D Need in COMP/opa9.card Reproducibility_after_restart= y

--

Configuration LMDZOR
Critère contrôlé Curie Repro (A1C=A2C) Restart (A1C=A3C) +1=+1 (A1C=A4C) Nb de MPI-OMP (A1C=A5C) Restart Debug(B1C=B2C)
Résultats
Commentaires
Critère contrôlé Ada Repro (A1A=A2A) Restart (A1A=A3A) +1=+1 (A1A=A4A) Nb de MPI-OMP (A1A=A5A) Restart Debug(B1A=B2A)
Résultats
Commentaires

--

Configuration eORCA1_LIM3_PISCES
Critère contrôlé Curie Repro (A1C=A2C) Restart (A1C=A3C) +1=+1 Nb de MPI (A1C=A4C) Debug Ada
Résultats
Commentaires

6.1.1 : 13 avril 2018

Voir détails du contrôle qualité là : http://wiki.ipsl.jussieu.fr/Pole/ESCI/GT/IPSLCM6/ControleQualiteTechnique (Accès Intranet)

Résultats des tests pour IPSLCM6.1.1 : 13 avril 2018

Configuration IPSL-CM6-LR
Critère contrôlé Repro piControl (A1C=A2C) Restart (A1C=A3C) +1=+1 (A1C=A4C) Repro historique (H1C=H2C) Ada Couplage
Résultats KO
Commentaires Voir : CM61B-pi-T???-1?. Différences au bout de 39 ans. 1/3600 mois 1M+1M+... = 1Y KO mais on va y arriver!!!

6.1.0 : 29 mars 2018

Voir détails du contrôle qualité là : http://wiki.ipsl.jussieu.fr/Pole/ESCI/GT/IPSLCM6/ControleQualiteTechnique (Accès Intranet)

Résultats des tests pour IPSLCM6.1.0 29 mars 2018

Configuration IPSL-CM6-LR
Critère contrôlé Repro piControl (A1C=A2C) Restart (A1C=A3C) +1=+1 (A1C=A4C) Repro historique (H1C=H2C) Ada Couplage
Résultats KO OK KO KO OK
Commentaires NON 1 simu /4 pas reproductible sur curie. Voir CM61-pi-T???-1? différence au bout de 4 12 14 mois, avec et sans ozone v1 et v2

Simulations avec modèle IPSLCM6.1.2 : 27 avril 2018

Figure pour comprendre :

  • CM61-LR-pi-03 et CM61-pre-pi-01 se superposent. CM61-LR-pi-01 et CM61-pre-pi-01 ne se superposent pas.
  • CM61-LR-hist-01 démarre de 1870 de CM61-LR-pi-01

piControl

Num PrioritéNom Résumé Membre Personne Description Page d'information Hermes pour retrouver les infos : mise en place, sorties sur curie, etc ...
1.1 H CM61-LR-pi-03 piControl 3 r1i1p1f1 Marie-Alice prend la suite de CM61-pre-pi-01, 1849, (compte commun) Reproducibility_after_restart= y , BUT : se superpose avec CM61-pre-pi-01 sur 1850-... , STOP si différence dans solver.stat , STOP 1907 ==> CM61-pre-pi-01 refaite à partir de 1899. OK en 1907, Ajout de <variable id="recv_field_timeout" type="double">3000.0</variable> dans PARAM/iodef.xml pour refaire 1907. ATTENTION : sur espace DSM et pas CMIP6 https://hermes.ipsl.upmc.fr/static/simulation.detail.html?uid=f1327c81-3357-4375-a810-914da4798d5b

Simulations avec modèle IPSLCM6.1.1 : 13 avril 2018

piControl

Num PrioritéNom Dépendances Membre Personne Description Page d'information Hermes pour retrouver les infos : mise en place, sorties sur curie, etc ...
1.1 H CM61-LR-pi-01 prend la suite de CM61-pre-pi-01 r1i1p1f1 Sébastien piControl 1
1.2 H CM61-LR-pi-02 prend la suite de CM61-pre-pi-02 r1i1p1f1 Laurent piControl 2
2 H CM61-LR-hist-01 historical partant de CM61-LR-pi-01 en 1869-12-31, soit après 20 ans de piControl Thibaut historical

Simulations avec modèle IPSLCM6.1.0 : 29 mars 2018

piControl spinup

Num PrioritéNom Dépendances Membre Personne Description Page d'information Hermes pour retrouver les infos : mise en place, sorties sur curie, etc ...
1.1 H CM61-pre-pi-01 prend la suite de CM6015S-pi-REDO-03 r1i1p1f1 Sébastien pre_piControl 1, restart 10 ans avant la fin de CM6015S-pi-REDO-03: 2279-12-31 https://hermes.ipsl.upmc.fr/static/simulation.detail.html?uid=5ef97dd4-91c6-4012-be91-ccbaed76834e
1.2 H CM61-pre-pi-02 prend la suite de CM6015S-pi-REDO-03-24XX r1i1p1f1 Laurent pre_piControl 2, restart 10 ans avant la fin de CM6015S-pi-REDO-03-24XX: 2589-12-31 https://hermes.ipsl.upmc.fr/static/simulation.detail.html?uid=07f5e9a1-eaf9-4686-904f-af3428fd24bc
1.3 H CM61-pre-pi-03 prend la suite de CM6015S-pi-REDO-03-28XX à la date 2929-12-31 r1i1p1f1 Arnaud pre_piContrl 3, restart 10 ans avant la fin de CM6015S-pi-REDO-03-28XX: 2929-12-31 https://hermes.ipsl.upmc.fr/static/simulation.detail.html?uid=c22e10d4-d98e-4488-93e2-16889ab4dfaf

Simulations avec modèle PREIPSLCM6.1

Num PrioritéNom Personne Description Page d'information Hermes pour retrouver les infos : mise en place, sorties sur curie, etc ...
1 H CM61-pi-REDO-03-24XX Laurent

Pour la suite des simulation, voir plus loin DECK.

Les MIPs

DECK/CMIP

Simulations/DECK

AerChemMIP

Simulations/AerChemMIP

C4MIP

Simulations/C4MIP

CFMIP

Simulations/CFMIP

CMIP

Simulations/DECK

DAMIP

Simulations/DAMIP

DCPP

Simulations/DCPP

DECK

Simulations/DECK

FAFMIP

Simulations/FAFMIP

GeoMIP

Simulations/GeoMIP

GMMIP

Simulations/GMMIP

HighResMIP

Simulations/HighResMIP

LS3MIP

Simulations/LS3MIP

LUMIP

Simulations/LUMIP

OMIP

Simulations/OMIP

PMIP

Simulations/PMIP

RFMIP

Simulations/RFMIP

ScenarioMIP

Simulations/ScenarioMIP

VolMIP

Simulations/VolMIP

Environment (suite )

ada

  • dans config.card enlever les 2 niveaux de serveurs XIOS c'est à dire:
    IOS= (xios_server.exe, xios.x, 1MPI)
    
  • dans libIGCM_comp/libIGCM_comp.ksh, s'affranchir du test sur la version du compilateur en mettant Print au lieu de Exit ligne 1033 :
    -    IGCM_debug_Exit "IPSLCM6.0.13 ... must be compiled with intel 2017 compiler"
    +    IGCM_debug_Print "IPSLCM6.0.13 ... must be compiled with intel 2017 compiler"
    

Pour mémoire : Modifications dans IPSL-CM6.1.0-LR par rapport à 6015

Voir le ticket #120 pour connaitre les détails techniques liés à cette version (version des sources, fichiers d'entrées, etc...)

  • LMDz
    • Passage à v2 des fichiers ozone
    • iflag_phytrac=0 => pas de traceur Aga
    • ajoute cdnc_min=10., changement des valeurs pour cld_lc_lsc et cld_lc_con de 0.0004 en 0.00065
  • ORCHIDEE
    • Corrections de diags pour les variables qui utilisent xios_default_val (surtout variable lut et neige).
  • NEMO
    • sources : quelques bugfix ( le heat content, CFC ) & calcul du transport de glace à travers les détroits
    • rajout des traceurs CFC's
    • xml pour les diags CMIP6
    • paramètres : ré-activation du controle des bilans de nutritifs dans PISCES

  • Coupleur

Attachments (8)