| 766 | === Les post-traitements avec libIGCM === |
| 767 | |
| 768 | Cette page donne quelques informations sur les post-traitements du couplé IPSLCM5. |
| 769 | |
| 770 | Les post-traitements sont des opérations systématiquement lancées en fin de simulation sur les frontales. Il s'agit des rebuild ou assemblage des fichiers créés par sous-domaines par les applications parallèles (LMDZ et ORCHIDEE dans le cas du couplé IPSLCM5. Ils concernent également les fichiers concernés par des Patchs ou modifications systématiques avant stockage (axe des temps, masque terre/océan, ...). Il s'agit des séries temporelles (qui lancent les monitoring) et des moyennes saisonnières (qui lancent les atlas). |
| 771 | |
| 772 | ==== Quels sont les paramètres de lancement des post-traitement? ==== |
| 773 | |
| 774 | Dans le fichier [http://forge.ipsl.jussieu.fr/igcmg/browser/CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v2/EXP00/config.card config.card], les variables qui gèrent les post-traitements sont dans la section Post :: |
| 775 | {{{ |
| 776 | 82 #D-- Post - |
| 777 | 83 [Post] |
| 778 | 84 #D- Do we rebuild parallel output, this flag determines |
| 779 | 85 #D- frequency of rebuild submission (use NONE for DRYRUN=3) |
| 780 | 86 RebuildFrequency=1Y |
| 781 | 87 #D- Do we rebuild parallel output from archive |
| 782 | 88 RebuildFromArchive=true |
| 783 | 89 #D- If you want to produce time series, this flag determines |
| 784 | 90 #D- frequency of post-processing submission |
| 785 | 91 TimeSeriesFrequency=10Y |
| 786 | 92 #D- If you want to produce seasonal average, this flag determines |
| 787 | 93 #D- the period of this average |
| 788 | 94 SeasonalFrequency=10Y |
| 789 | 95 #D- Offset for seasonal average first start dates ; same unit as SeasonalFrequency |
| 790 | 96 #D- Usefull if you do not want to consider the first X simulation's years |
| 791 | 97 SeasonalFrequencyOffset=0 |
| 792 | }}} |
| 793 | |
| 794 | * !RebuildFrequency=1Y indique la fréquence de lancement des travaux REBUILDA. A noter: si !JobType=DEV, le paramètre est forcé la valeur de !PeriodLength |
| 795 | * !RebuildFromArchive=true indique que les fichiers seront stockés dans leur état initial (par sous-domaine), sur la machine de stockage. Le job REBUILDA commencera par aller les chercher sur le serveur de fichier, avant de les assembler (rebuild), de leur appliquer les Patchs demandés puis de les stocker dans le répertoire usuel COMP/Output/MO ou COMP/Output/DA pour les fichiers mensuels ou journaliers de la composante COMP (OCE, ICE, ATM, SRF, ...). |
| 796 | * !TimeSeriesFrequency=10Y Les séries temporelles seront lancées tous les 10 ans. |
| 797 | * !SeasonalFrequency=10Y Les moyennes saisonnières (des mois de janvier, février,...) seront lancées tous les 10 ans. |
| 798 | * !SeasonalFrequencyOffset=0 Les premières années seront sautées avant de commencer à calculer les moyennes saisonnières. |
| 799 | |
| 800 | ==== Où tournent les post-traitements? ==== |
| 801 | Les post-traitements tournent généralement sur les frontales des calculateurs. Il s'agit de travaux systématiques de traitement de fichiers qui n'ont pas leur place sur les calculateurs. Peu d'optimisation, peu de parallélisation massive, ... |
| 802 | Sur chaque centre, les machines de calcul ont leur frontale privilégiée. |
| 803 | || Centre || Calculateur || Frontale || |
| 804 | || CCRT || mercure SX8 || frontale TX7 mercure || |
| 805 | || CCRT || mercure SX9 || cesium || |
| 806 | || CCRT || platine || frontale platine || |
| 807 | || IDRIS || brodie || ulam || |
| 808 | || IDRIS || vargas || ulam || |
| 809 | |
| 810 | ==== Comment vérifier que les post-traitements sont bien passés? ==== |
| 811 | |
| 812 | * sur ulam, les sorties des post-traitements sont là : $WORKDIR/IGCM_OUT/IPSLCM5/Ma_simulation |
| 813 | * sur la frontale TX7, ils sont là : $SCRATCHDIR/IGCM_OUT/IPSLCM5/Ma_simulation |
| 814 | * sur cesium, ils sont là : $SCRATCHDIR/IGCM_OUT/IPSLCM5/Ma_simulation |
| 815 | * sur la frontale de platine, ils sont là : SCRATCHDIR/IGCM_OUT/IPSLCM5/Ma_simulation |
| 816 | |
| 817 | A noter : Les commandes de mise sur dods sont faites à la fin du job de monitoring ou à la fin de chaque atlas. |
| 818 | |
| 819 | ==== Comment relancer les post-traitements? ==== |
| 820 | |
| 821 | Il existe 2 méthodes pour relancer les post-traitements : relancer le job de rebuild ou relancer le dernier mois de la simu avec DRYRUN=3. |
| 822 | |
| 823 | Comment faire est déjà décrit là : [http://forge.ipsl.jussieu.fr/libigcm/wiki/libIGCM/DocUtilisateur/FAQ#Commentrelancerlespost-traitementsàpartirdelafrontale depuis la frontale] et [http://forge.ipsl.jussieu.fr/libigcm/wiki/libIGCM/DocUtilisateur/FAQ#Commentrelancerlespost-traitementsàpartirdelamachinedecalcul depuis le calculateur] |
| 824 | |
| 825 | ==== Qu'est-ce que rebuild? ==== |
| 826 | |
| 827 | * rebuild est un utilitaire qui permet de recombiner plusieurs fichiers créés par un programme parallèle (sous-domaines) en un seul. |
| 828 | * rebuild est disponible avec IOIPSL. Voir http://forge.ipsl.jussieu.fr/igcmg/browser/IOIPSL/trunk/tools |
| 829 | * rebuild est installé sur les frontales de l'IDRIS et du CCRT dans les comptes communs. Il est appelé automatiquement à la fréquence !RebuildFrequency et représente la toute première étape des post-traitements. |
| 830 | |
| 831 | ==== Qu'est-ce qu'une Time Series? ==== |
| 832 | |
| 833 | Une Time Serie est un nouveau fichier, qui contient une seule variable sur toute la longueur d'une simulation (!ChunckJob2D = NONE) . Elles sont décrites dans les fichiers COMP/*.card derrière les paramètres !TimeSeriesVars2D et !TimeSeriesVars3D. Les 3D étant très volumineuses, peuvent être produites par période de !ChunckJob3D = 50Y années. |
| 834 | |
| 835 | Exemple pour lmdz : |
| 836 | |
| 837 | {{{ |
| 838 | 45 [OutputFiles] |
| 839 | 46 List= (histmth.nc, ${R_OUT_ATM_O_M}/${PREFIX}_1M_histmth.nc, Post_1M_histmth), \ |
| 840 | ... |
| 841 | 53 [Post_1M_histmth] |
| 842 | 54 Patches= (Patch_20091030_histcom_time_axis) |
| 843 | 55 GatherWithInternal = (lon, lat, presnivs, time_counter, aire) |
| 844 | 56 TimeSeriesVars2D = (bils, cldh, ... ) |
| 845 | 57 ChunckJob2D = NONE |
| 846 | 58 TimeSeriesVars3D = () |
| 847 | 59 ChunckJob3D = NONE |
| 848 | }}} |
| 849 | |
| 850 | * Chaque fichier de sortie (section [!OutputFiles]) est associé à un post-traitement : Post_1M_histmth dans l'exemple. |
| 851 | * post_1M_histmth est une section (débutant par "[Post_1M_histmth]") |
| 852 | * Cette section contient les variables : Patches= , !GatherWithInternal = , !TimeSeriesVars2D = , !ChunckJob2D , !TimeSeriesVars3D et !ChunckJob3D |
| 853 | * Patches= (Patch_20091030_histcom_time_axis) Il s'agit du Patch qui sera appliqué sur le fichier avant son stockage sur le serveur de fichiers. Ils sont visibles au niveau de : [http://forge.ipsl.jussieu.fr/libigcm/browser/trunk/libIGCM/libIGCM_post libIGCM_post] On peut avoir plusieurs Patch appliqués l'un après l'autre. |
| 854 | * !GatherWithInternal = (lon, lat, presnivs, time_counter, aire) Il s'agit des variables qui sont extraites du fichier initial et rangées avec la variable de la Time Serie. |
| 855 | |
| 856 | Les Time Series sont rangées sur le serveur de fichiers dans les répertoires IGCM_OUT/IPSLCM5/ATM/Analyse/TS_MO pour celles qui sont issues des fichiers mensuelles. TS_DA pour celles qui sont issues des fichiers journaliers. |
| 857 | |
| 858 | A noter : Il y a un job de Time Series 2D et un job par Time Series 3D sur les frontales. Pour le couplé, il y en donc 5 actuellement. |
| 859 | |
| 860 | ==== Comment ajouter une variable dans les Time Series? ==== |
| 861 | |
| 862 | Pour ajouter une nouvelle Time Serie il suffit d'ajouter son nom à la série de variables existantes, en prenant soin de la mettre avec les variables similaires : 2D ou 3D. |
| 863 | |
| 864 | ==== Qu'est-ce qu'un monitoring? ==== |
| 865 | |
| 866 | Voici un exemple de Monitoring du couplé IPSLCM5 : [http://dodsp.idris.fr/rpsl003/IPSLCM5/BM539PDN/MONITORING/ 3 ans] |
| 867 | |
| 868 | Le monitoring d'une simulation est composé de plusieurs courbes produites à partir de variables des Time Series. Il contient également une première page détaillant les dates de passage en machine de la simulation. Cette page permet de suivre la progression d'une simulation en machine. |
| 869 | |
| 870 | Le monitoring est lancé automatiquement à la fin des Time Series. |
| 871 | |
| 872 | ==== Comment ajouter une figure dans les monitoring? ==== |
| 873 | |
| 874 | Les monitoring sont paramétrés là: ~compte_commun/atlas/ Par exemple pour LMDZ : monitoring01_lmdz_LMD9695.cfg |
| 875 | |
| 876 | Il est possible de modifier un monitoring en créant un répertoire POST locale à la configuration, en recopiant un fichier .cfg et en le modifant à sa convenance. Il y a 2 exemples dans le couplé. Voir [http://forge.ipsl.jussieu.fr/igcmg/browser/CONFIG/IPSLCM/IPSLCM5/branches/IPSLCM5_v2/EXP00/POST post-traitements spécifiques] |
| 877 | |
| 878 | |
| 879 | ==== Qu'est-ce qu'un moyenne saisonnière? ==== |
| 880 | |
| 881 | Les fichiers SE ou moyennes saisonnières sont lancées automatiquement à la fréquence !SeasonalFrequency=10Y (en faisant attention à !SeasonalFrequencyOffset=0) lorsqu'il y a autre choses que NONE dans le dernier paramètre du fichier dans la section '[!OutputFiles]'. |
| 882 | Tous les fichiers avec un Post demandé sont alors moyennés avec la commande ncra avant d'être stockés dans le répertoire : IGCM_OUT/IPSLCM5/ATM/Analyse/SE 1 fichier par !SeasonalFrequency=10Y |
| 883 | |
| 884 | |
| 885 | ==== Où voir les atlas? ==== |
| 886 | |
| 887 | Voici un exemple d'atlas du couplé IPSLCM5 : [http://dodsp.idris.fr/rpsl003/IPSLCM5/BM539PDN/ATLAS/SE_1860_1862/ATM/ATM.html ATM] |
| 888 | |
| 889 | Il y a au moins 8 répertoires avec les atlas pour le couplé. |
| 890 | |
| 891 | Les atlas sont des outils mis à disposition sous les comptes communs. Voir ~compte_commun/atlas/ Ils sont basés sur des fichiers atlas_composante.cfg. utilisant les outils fast/atlas. Voir : http://dods.ipsl.jussieu.fr/fast/ |
| 892 | |
| 893 | |
| 894 | |