source: trunk/MESOSCALE_DEV/NOTES.txt @ 543

Last change on this file since 543 was 542, checked in by aslmd, 13 years ago

MESOSCALE: minor changes. including a problem with dustq not being output through MESOINI. and compilation problem for old mesoscale model when LMDZ.MARS (the new model) was not here.

File size: 15.9 KB
RevLine 
[542]1
2NE PASE UTILISER NOMBRES NEGATIFS DANS LE CAS HILL !!!!
3
4il faudrait parler du staggering U et V et de sa solution avec api
5
[514]6pour les trucs octave il faut executer dans octave en interactif
7
8https://bi.offis.de/wisent/tiki-index.php?page=WRF-gFortran
9
10
[542]11
[343]12solved with openMPI !!!!
13beware of use of openMPI with NFS
14faster with local disks
15
[335]16NOUVELLE FERME
17- OK avec pgf_64_single
18- OK avec mpi_64 sur 1 proc
19- pas OK avec mpi_64 et 4 proc
20  cas Hellas crashe entre la sortie 9 et 10
21  .... fastsse ou pas ne change rien [mpich fast dans les deux cas]
22  .... changer radt ne fait que retarder
23  .... baisser le pas de temps pose probleme plus tot
24  .... ne marche pas en phasant les options WRF avec les options LMD physics
25  .... avec fastsse partout (mm MPI), crash ds la sortie 2
26  .... option de base SVN avec mpich sans fast, marche pas non plus crashe entre 9 et 10
[341]27  .... iradia=1 ne change rien, toujours le probleme
28  .... la simulation tourne lorsqu'on fait callrad = F
29  .... test avec Mbounds ne renvoie aucuune erreur
30  .... test avec juste -Ktrap=fp et rien d'autre renvoie aucune erreur
31  .... semble OK avec iaervar=1, probleme dans meso_dustopacity ??? ou avec la lecture NETCDF ???
32  .... crashe direct avec WHERE_MPI=/donnees/aslmd/MPI/mpich2-1.3.1_normal/bin
33  .... alors que ca passe nickel avec iaervar=1
34  .... crashe direct avec mes librairies netcdf3.6.1 compilees avec le dernier pgf2011
35  .... ne crashe pas direct avec mes librairies netcdf4.0.1 compilees avec le
36         dernier pgf2011 et les options utilisees dans le modele ajoutees aux options
37         dans la librairie compilee dans /distrib/local
38       mais crashe entre la sortie 9 et 10 comme les autres !!!!
39  .... marche bien aussi avec iaervar=3... probleme de lecture netcdf ???
40  .... experience: on a iaervar=4 mais juste apres readtesassim
41       on regle tauref a 0.3 et ca passe. donc ce n est pas un bug structurel.
42       les valeurs lues ne sont probablement les bonnes soit par probleme
43       dans le fichier soit par probleme structurel dans readtesassim
44  .... pourtant en affichant les valeurs on ne voit pas de pb particulier !
45  .... en changeant le nom hfx en sensheat et en enlevant z0 qui pose un pb
46       avec l'ancienne physique, ca ne marche toujours pas.
47  .... crash: semble stocker les variables qui sortent de la physique OK
48       mais le reste, par exemple tsurf, est NaN c'est bizarre
49  .... avec ndomainsz=ngridmx le modele va plus loin et crashe le second jour
50       a la sortie 2
51  .... mm comportement sur ulrich que sur penn
52  .... avec mcmodel crashe tout de suite
53  .... idem en invalidant les options d optimisation dans WRF et LMD phys [non en fait il faut enlever dans MPI]
54  .... test avec netcdf3: marche pas. mais ne faut-il pas enlever toutes les options?
55  .... avec aucune option d'optimisation et netcdf3: Nan avant la sortie 2
56  .... avec aucune option d'optimisation et netcdf4: va plus loin mais NaN entre 9 et 10
57  .... options d'optimisation en -O3 toujours le mm probleme
58  .... toujours le mm probleme mm avec ulimit -s unlimited
[335]59
[341]60  .... test qui donne des sortie 2 des NaN en recompilant avec -fast partout
61       avec mpirun -np 1, aucun souci tout va bien
62       avec mpirun -np 8, souci egalement des la sortie 2
63       ... visiblement un souci avec readtesassim ???
64       .... MAIS NON CAR SOUCI AUSSI AVEC iaervar=1 avec 8 procs
65       .... ALORS QUE PAS DE SOUCI AVEC iaervar=1 avec 4 procs
66export NETCDF=/donnees/aslmd/MODELES/MESOSCALE_DEV/NETCDF/pgfortran_64_netcdf-4.0.1_fast
67export WHERE_MPI=/donnees/aslmd/MPI/pgfortran_mpich2-1.3.1/bin
68  .... corrections readtesassim ne semblent rien changer...
69  .... sorties frequentes permettent de voir que le probleme est localisee
70       mais rempli tres vite le domaine
71       avec dt=40s probleme apparait au bout de 700s
72       avec dt=10s probleme apparait au bout de 300s
73       avec dt=100s problemen apparait au bout de 1200s
74       ... visiblement le probleme apparait aux jointures des domaines ?
75       ... probleme sur le vitesse verticale calculee ???
76       ... visiblement non puisque mm comportement avec non_hydrostatic ou W est normal
77       ... apparemment il s'agit vraiment d'une instabilite numerique
78       ... mettre les tendances R..BLEN a 0 ne change rien...
79       ... changer dimradmars n'arrange pas en fait lorsquon met des sorties frequentes
80       ... bizarre un des 4 processes wrf.exe passe en D quelques fois ????
81... ne marche pas avec les options de compilation de WRF3 !!!
82     (mais domain met moins de temps a compiler)
83... toujours le mm probleme en acces local disque
[335]84
[343]85... mpich compile sans fast crash entre sortie 1 et 2
86    mpich compile avec fast crash entre sortie 9 et 10
87... mpich2-1.4.1 compile avec fast crash entre sortie 9 et 10
88
89
[341]90TEST AVEC DEBUG
91  .... s'arrete au beau milieu d integrations sans sortir de message d'erreur
92TEST AVEC LES POUR VOIR SI PB CORRIGE AVEC WRF3
93  .... rsl_lite ne compile pas avec l'option -fast
94  .... OK avec nofast_nemesis version compilee de mpich2
95TEST avec le vieux mpich2... CRASH aussi entre la sortie 9 et 10
96
97memes erreurs avec RSL_LITE de WRF3
98alors qu il compile sans souci chez LES
99.... un probleme d'options de compilations ????
100.... pendre direct la librairie compilee chez WRF3 ???
101LES: run OK
102juste des NaN a la toute fin...
103
104peut etre faut il regler dans WRFV2 les warnings relies a la compilation de rsl_lite
105------- il y a probablement des choses a corriger
106------- coupler avec gcc [-CC=gcc] comme dans LES ????
107.... mais lorsqu on utilise le vieux mpi compile avec pgf7 pas de warnings !
108
109
110...le debugger voir une floating exception sur lwtt dans la boucle avec kdlon
111...avec les options debug le modele semble aller loin OK --> a verifier??
112...les warnins a la compilation ont ils de l importance ?
113...le fait que netcdf4 ne soit pas supporte ???
114...longue compil sur module_domain....
115
116...des pistes ici
117http://www.mmm.ucar.edu/wrf/users/wrfv3/known-prob-3.0.1.html
118
119fonctionne avec le vieux mpi dans pgf2011 [et netcdf4]
120mais les jobs ne sont pas a 100% sur les procs
121probleme donc... c est tres lent
122
123test basique avec WRFV2.2.1 et le cas em_quarter_ss et mpipgf
124memes resultats avec un proc ou plusieurs
125pas de crash
126
127
[335]128---------------------------------------------------------------------------------
129
[330]130--- sur nouvelles machines problemes run parallele avec nouvelle physique
[295]131
[330]132--- makegcm_g95 ne marche pas avec -no-second-underscore
133    marche sans et semble compiler correctement
[331]134    ne compile pas les exec avec mais OK pour liblmd.a
[330]135
136--- conflits quelque soit la combinaison (f-no-second-underscore ou pas) lors
137de la compilation du dynamical core WRF avec g95 64 bits
138http://forum.wrfforum.com/viewtopic.php?f=5&t=3467
139
[331]140--- absurde: fonctionne avec les librairies NETCDF gfortran compilees par
141Ehouarn sur auric
142et en remplacant readtesassim par le vieux readtesassim
143dans ce cas meme testphys1d.e compile correctement
144... il y a quelques erreurs netcdf dans la physique visiblement ss conseq [testphys1d compile....]
145... surveiller tout de meme, en rapport avec ncf90
146... faut-il enlever #include netcdf.inc dans readtesassim soit dit en passant?
[330]147
[331]148
[330]149gfortran https://bi.offis.de/wisent/tiki-index.php?page=WRF-gFortran
[331]150---> MAIS GROS PROBLEMES (time mgmt and seg fault)
[330]151
152
[226]153cc-----------------------------------
154cc you can still use meso_WRITEDIAGFI (e.g. for debugging purpose),
155cc though this is not the default strategy now
156cc-----------------------------------
157cc please use cudt in namelist.input to set frequency of outputs
158cc-----------------------------------
159cc BEWARE: if at least one call to meso_WRITEDIAGFI is performed,
160cc cudt cannot be 0 - otherwise you'll get a "Floating exception"
161cc-----------------------------------         
162!      call meso_WRITEDIAGFI(ngrid,"tauref",
163!     .  "tauref","W.m-2",2,
164!     .       tauref)
165!      call meso_WRITEDIAGFI(ngrid,"zt",
166!     .  "zt","W.m-2",3,
167!     .       zt)
168!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
169!!!!! note WRF MESOSCALE AYMERIC -- mot cle "caps"
170!!!!! watercaptag n'est plus utilise que dans vdifc
171!!!!! ... pour que la sublimation ne soit pas stoppee
172!!!!! ... dans la calotte permanente nord si qsurf=0
173!!!!! on desire garder cet effet regle par caps=T
174!!!!! on a donc commente "if (caps.and.(obliquit.lt.27.))" ci-dessus
175!!!!! --- remplacer ces lignes par qqch de plus approprie
176!!!!!      si on s attaque a la calotte polaire sud
177!!!!! pas d'autre occurrence majeure du mot-cle "caps"
178!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
[147]179
[226]180
[200]181kvdif ne sert a rien dans le mesoscale martien, en raison de l'appel a la
182physique et MY
183
[155]184Venus_est_dans_SOURCES_FORTRAN
185
[142]186adapter runmeso pour les runs ideal et les ???
[36]187
[142]188faire comme storm mais avec les pour eviter les recouvrements
189user manual
190
[156]191changer la gestion topo dans LES comme fait dans modele general
192
[112]193        13min_si_Registry_modifie     
194        15min_makemeso_moins_f       
195        1min_phys_plus_dyn_chgtresol 
196
197        PD_SCALAR est T par defaut desormais !!
198
199
[169]200        il faudrait regler le prob du Registry dans le LES
[96]201il y a un souci avec les variables liees a l'eau et d'autres
202
[100]203        ---anciennes notes lES sur gnome pb avec ideal.exe
204        ## jusque 201 OK avec ideal.exe sequentiel
205        ## ensuite il vaut mieux utiliser
206        ## mpirun -n 4 ideal.exe
207        ## le MP_STACK_SIZE est dans le bashrc
208
209
210
[91]211concat.e puis localtime.e puis
[112]212localtime.e (tres long) puis concatnc.e pour avoir en ls
213le resultat doit etre strider a 10... sinon bug affichage
214
[90]215ncwa -O -v mtot,icetot -a longitude -d longitude,-179.0,179.0 diagfi.nc yeye.nc
[91]216ncwa -O -v mtot -a longitude -d longitude,-180.0,180.0 concat_LT.nc mawd.nc
[96]217(si trop gros faire ncrcat -v mtot -d Time,,,2 concat_LT.nc yorgl.nc)
[90]218
[114]219resumee
220--> localtime.e tres long
221--> concatnc.e en ls tres court
222--> renomme le fichier
223--> ncwa -O -v mtot,Time -a longitude -d longitude,-180.0,180.0 gcm_LT14_a035.nc mawd_a035.nc
224
[91]225        A FAIRE:::: mettre des flags precompilo dans les meso_
226        les reporter dans makegcm
[90]227
[77]228changer le renormalisation dans aeropacity ????
229on ne laisse pas aerosol comme le lifting veut qu'il soit !
230tenter des taux de soulevement pour que taudust_tmp soit les obs
231en prescivant une dust bomb fixe d opacite, on aura au moins la structure verticale
[73]232
[84]233        tester traceurs radiativement actifs avec la nouvelle physique ?????
[77]234
[112]235        A FAIRE: PB LES sur iDATAPLEX (les points HFX nuls) (pas de soucis sur ciclad)
[77]236METTRE SUR LE svn LA BASE d'ETATS INITIAUX ????
237
[73]238more than 4 procs w/ nest ??? y reflechir
[77]239        -----------------------------------------------------------------------
240        -- si possible comment determiner taille ?
241        nproc doit diviser e_we-1 (1er nest)
242        grid_ratio doit diviser e_we-1 +4 (1er nest)
243        soit e_we=ye+1
244        grid_ratio divise ye+4 et nproc divise ye
245        soit nproc=8, ye=8*i
246        ainsi il existe j tel que 8i + 4 = 3j ou encore 4*[2i+1] = 3j
247        verifie par exemple si 2i+1 est multiple de 3
248        il suffit donc de trouver un multiple impair de 3 et de deduire i
249        par exemple 2i+1=33 >>>> i=16
250        >>>> e_we = 129 pour le 1er nest (et ajouter 4 pour les suivants)
251        ------------------------------------------------------------------------
[73]252
[77]253        ne pas utiliser le FASTCASE avec traceurs (instabilites en haut)
254            ces instabilites sont cependant reglees si on augmente radt a 10 par exemple
255
[84]256        pour le cycle de l'eau c'est OK de regler caps=F dans le mesoscale
257        sauf si on commence a devoiler la calotte permanente nord
258        ---> corrige, scenario caps specifique au mesoscale
[73]259
[77]260        NE SERAIT-CE PAS MIEUX DE TOUT TRANSMETTRE AUX BORNES ???
261        tous les traceurs, pas seulement vapor
[73]262
263
[77]264        - attention il faut les trois MARS sinon il s arrete sans message clair
265        - attention a ne pas lancer le modele s il est deja lance
266        - important que pd_scalar soit a T ... le mettre par defaut ????
[72]267
268
[45]269ROUTINES a AJOUTER sont dans COMMON_GCM
270- passer aux nouveaux makegcm [en commun avec Ehouarn si on veut le nouveau
271  readtesassim qui est en F90]
272- il faut tester le nest pour verifier les lignes trop longues
[36]273
[77]274        (ok) lier gr_fi_dyn qui est dans dyn3d
275        (ok) regler le pb du nouveau readtesassim (ou alors le lier tout simplement ou
276          l'appeler meso_readtesassim)
277        (ok) regler le pb meso_dustlift (le lier dans makemeso comme point precedent)
278             (car le souci c que dustlift est appele dans vdifc)
[36]279
[493]280        [c fait normalement]
[77]281        RESTE a ADAPTER le LES a la NOUVELLE PHYSIQUE
282        il y a normalement peu a faire
283        reste a faire egalement le -DNEWPHYS pour le LES
[24]284
[77]285        attention pb d'affichage des valeurs dans le fichier texte avec LES ???
286        bien que les valeurs du fichier soient tout a fait raisonnables
287        ... n'est-ce pas un effet de bord cache ????
[34]288
289
[77]290        apres fusion, le LES est reconnu par module_lmd_driver lorsque diff_opt=2 km_opt=2
[34]291
292
[77]293        -attention PB si on ne sort pas HFX et USTM (note dans le Registry)
294        -il faut run.def nouvelle physique [c est meme ce qui est utilise par runmeso]
295        - IL FAUT SE PENCHER SUR LE FAIT QU'ON INDIQUE q2val=0 dans lmd_driver ....
[34]296
[77]297-----------------------
[32]298ATTENTION NOUVELLE PHYSIQUE
299Oui, c'est quelque chose qu'il faut probablement changer partout
300maintenant que la version de pgf90 à changé (sur les machines du LMD).
301Avec cette nouvelle version (7.1-6), le '-fast' est plus agressif
302qu'avant (et inclue entre autre les horribles '-Mvect=sse -Mscalarsse'
303qui dégradent la précision de certains calculs pour accélérer le code);
304je préconise de ne plus s'en servir. Bon d'accord, je n'ai pas fait une
305étude approfondie de l'impact de '-fast', mais j'ai vu qu'avec,
306j'obtenais des résultats différents lorsque je changeais simplement
307l'ordre des traceurs...
[24]308
[32]309Aymeric Spiga wrote:
310> je détecte ces changements d'option de compilation ; ont-ils de
311> l'importance ?
312>
313> Aymeric
314>
315> < #   set optim90=" -fast"
316> < #   set optimtru90=" -fast -c -Mfree "
317> < #   set optim90=" -O2 -Munroll=c:1 -Mnoframe -Mcache_align"
318> < #   set optimtru90=" -O2 -Munroll=c:1 -Mnoframe -Mcache_align"
319> <    set optim90=" -O2 -Munroll -Mcache_align"
320> <    set optimtru90=" -O2 -Munroll -Mcache_align"
321> ---
322>   
323>>    set optim90=" -fast"
324>>    set optimtru90=" -fast -c -Mfree "
[77]325------------------------------
[32]326
327
[77]328        - attention a cp et R, normaliser une bonne fois pour toutes
329        - il manque sur le SVN les cas idealises
[27]330- il manque sur le SVN les scripts MPI
[77]331        - il faut recompiler les librairies NETCDF
332        - mettre la nouvelle physique
333        - mettre les DEF du meso-echelle
[24]334
[77]335        - modele ok sur auric
[24]336- modele pas ok sur ciclad avec pgf2010, erreur inedite un seul module manquant
[77]337        - modele LES OK sur ciclad
338        - modele LES ok sur auric
[24]339
[77]340        24/01/2011
341        tests g95 en 64bits natif sur systeme Linux
342        -- modifications de makemeso, tests
343        -- tout est OK sauf les libraires NETCDF, probleme d'underscore
344        -- OK avec libraires maison compilees avec g95 standard sur flores [et tourne OK]
[24]345
346
347
[77]348        mpi_64_pgf7_ncdf4_mpi1.2.txt
349        - probleme lors de la compilation de solve_em : LINUX runs out of memory [huchard]
350        - IL FAUT COMPILER SUR auric
351        nougaro est lent a la compilation, utiliser surtout auric
[24]352
[32]353
354
355
[77]356______________________________________________________
[32]357
358
359PB MPI
360/donnees/aslmd/MODELES/MPI/mpich2-1.2.1p1_PGF7/lib/libmpich.a(simple_pmi.o):
361In function `PMI_Init':
362simple_pmi.c:(.text+0x15c0): warning: Using 'gethostbyname' in statically
363linked applications requires at runtime the shared libraries from the glibc
364version used for linking
365/donnees/aslmd/MODELES/MPI/mpich2-1.2.1p1_PGF7/lib/libmpich.a(simple_pmi.o):
366In function `PMI_Init':
367simple_pmi.c:(.text+0x15c0): warning: Using 'gethostbyname' in statically
368linked applications requires at runtime the shared libraries from the glibc
369version used for linking
370/donnees/aslmd/MODELES/MPI/mpich2-1.2.1p1_PGF7/lib/libmpich.a(simple_pmi.o):
371In function `PMI_Init':
372simple_pmi.c:(.text+0x15c0): warning: Using 'gethostbyname' in statically
373linked applications requires at runtime the shared libraries from the glibc
374version used for linking
375/donnees/aslmd/MODELES/MPI/mpich2-1.2.1p1_PGF7/lib/libmpich.a(simple_pmi.o):
376In function `PMI_Init':
377simple_pmi.c:(.text+0x15c0): warning: Using 'gethostbyname' in statically
378linked applications requires at runtime the shared libraries from the glibc
379version used for linking
380
381
382POSSIBLE mars.sed
383
384s+ *../frame/module_internal_header_util.o ../frame/pack_utils.o
385-L../external/esmf_time_f90 -lesmf_time+& -L../mars_lmd/libo -llmd
386-Mmpi=mpich2+g
387
Note: See TracBrowser for help on using the repository browser.