source: trunk/mesoscale/LMD_LES_MARS/modif_mars/makeles @ 60

Last change on this file since 60 was 60, checked in by aslmd, 14 years ago

LMD_MM_MARS et LMD_LES_MARS: ajouts de scripts et modifications runmeso/makeles/makemeso pour faire tourner le modele sur iDataPlex. premiers tests en parallele fonctionnent tres bien. le run 16procs est bien 4fois rapide que le run 4procs sur la ferme planeto. resultats totalement similaires 4procs TESTCASE entre auric et gnome (a part amortissement vitesse verticale aux premiers pas de temps). le LES fonctionne bien lui aussi, cependant il y a un bug a corriger relatif a un flux de chaleur sensible nul aux points d'interfaces entre 4 tuiles. ------ petite remarque sur LMDZ5: un job 24proc est 10fois plus rapide qu'un job 8proc absolument equivalent sur ciclad.

  • Property svn:executable set to *
File size: 4.1 KB
Line 
1#! /bin/bash
2
3#------------------------------
4# makeles
5#------------------------------
6#     MMM must be defined
7#------------------------------
8# A. Spiga 01/2009
9#------------------------------
10
11
12echo "Use -n if you don't want to recompile physics"
13
14
15#
16# SPECIAL CICLAD
17#
18
19donotcompilephys=0
20while getopts "n" options; do
21  case $options in
22   n ) donotcompilephys=1;; ## do not recompile physics
23  esac
24done
25
26#
27# LOCATIONS
28#
29here=$PWD
30whereliblmd=$here
31
32
33##############################################################
34##############################################################
35if [ ${donotcompilephys} -eq 0 ]
36then
37
38#
39# COMPILE PHYSICS
40#
41cd $MMM
42makemeso -j
43#
44#makemeso -rd < last > /dev/null
45folder=$PWD'/'$(more what_folder)'/WRFV2/'
46libphys_folder=$folder'mars_lmd/libo/'
47phymars_folder=$folder'mars_lmd/libf/phymars/'
48\rm what_folder 2> /dev/null
49
50#
51# GET liblmd GENERATED LIBRARY and INCLUDEs
52#
53echo $libphys_folder
54cp -rf ${libphys_folder}/liblmd.a ${whereliblmd}/
55#cp -rf ${phymars_folder}/dimphys.h ${here}/modif_mars/
56cp -rf ${phymars_folder}/dimphys.h ${here}/mars_lmd/libf/phymars/
57#cp -rf ${folder}/call_meso_inifis.inc ${here}/modif_mars/
58#cp -rf ${folder}/call_meso_physiq.inc ${here}/modif_mars/
59cp -rf ${folder}/call_meso_inifis.inc ${here}/
60cp -rf ${folder}/call_meso_physiq.inc ${here}/
61#cp -rf ${folder}/inc/module_lmd_driver_output*.inc ${here}/modif_mars/
62cp -rf ${folder}/inc/module_lmd_driver_output*.inc ${here}/inc/
63#cp -rf ${phymars_folder}/wrf_output_2d.h ${here}/modif_mars/
64#cp -rf ${phymars_folder}/wrf_output_3d.h ${here}/modif_mars/
65cp -rf ${phymars_folder}/wrf_output_2d.h ${here}/mars_lmd/libf/phymars/
66cp -rf ${phymars_folder}/wrf_output_3d.h ${here}/mars_lmd/libf/phymars/
67fi
68##############################################################
69##############################################################
70
71
72cd $here
73
74##------------------------------
75##------------------------------
76##
77## MPI (dm) 64 bits
78##
79##TODO: le rendre adapte aux reponses du user a makemeso
80#touch conf
81#echo 3 >> conf
82##echo 4 >> conf  #openMP n'arrange pas beaucoup de le tps de calcul
83#echo 1 >> conf
84##------------------------------
85##------------------------------
86
87
88
89### SINGLE PROC 32 bits g95
90#touch conf
91#echo 5 >> conf
92#echo 0 >> conf
93
94## SINGLE PROC 64 bits
95#touch conf
96#echo 1 >> conf
97#echo 0 >> conf
98
99## MPI (dm) 64 bits IFORT
100touch conf
101echo 7 >> conf
102echo 1 >> conf
103
104
105#
106# CONFIGURE
107#
108echo "configure..."
109#touch configure.wrf
110\rm configure.wrf
111./configure < conf > /dev/null 2> /dev/null
112#./configure
113#sed s+"-lnetcdf"+"-lnetcdf -L$whereliblmd -llmd"+g configure.wrf | sed s+'mpif90 -f90=$(SFC)'+'/usr/lib64/openmpi/1.2.8-pgf/bin/mpif90'+g | sed s+'mpicc -cc=$(SCC)'+'/usr/lib64/openmpi/1.2.8-gcc/bin/mpicc -DMPI2_SUPPORT'+g > yeah
114## WHERE_MPI must be defined
115sed s+"-lnetcdf"+"-lnetcdf -L$whereliblmd -llmd"+g configure.wrf | sed s+"mpif90"+"$WHERE_MPI/mpif90"+g | sed s+"mpicc"+"$WHERE_MPI/mpicc -DMPI2_SUPPORT"+g > yeah
116#sed s+"# -g"+"-fno-second-underscore # -g"+g configure.wrf | sed s+"-lnetcdf"+"-lnetcdf -L$whereliblmd -llmd"+g > yeah
117#sed s+"-lnetcdf"+"-lnetcdf -L$whereliblmd -llmd"+g configure.wrf | sed s+"#-g"+"-g"+g > yeah
118#sed s+"-lnetcdf"+"-lnetcdf -L$whereliblmd -llmd"+g configure.wrf > yeah
119mv yeah configure.wrf
120
121        ####
122        #### provoque des seg faults....
123        ####
124        #sed s+"-fastsse"+"-fastsse -mcmodel=medium -Mlarge_arrays"+g configure.wrf > yeah
125        #### TEST TEST
126        #mv yeah configure.wrf
127
128sed s+"-fastsse"+" "+g configure.wrf > yeah
129#
130# sometimes fastsse is problematic
131#
132
133##sed s+"-fastsse"+"-fastsse -mcmodel=medium"+g configure.wrf > yeah
134mv yeah configure.wrf
135#sed s+"-mp -Minfo=mp"+"-mp -Minfo=mp -mp=nonuma"+g configure.wrf > yeah
136#mv yeah configure.wrf
137
138#### OBLIGATOIRE POUR IFORT, OK AVEC LES AUTRES ???
139sed s+"-llmd"+"-llmd $NETCDF/lib/libnetcdf.a"+g configure.wrf > yeah
140mv yeah configure.wrf
141
142
143\rm conf
144
145
146#
147# COMPILE LES TEST CASE w/ LMD PHYSICS
148#
149touch modif_mars/module_lmd_driver.F
150\rm log_compile
151\rm log_error
152echo "compile LES WRF with LMD Mars physics... look log_compile and log_error"
153compile em_les > log_compile 2> log_error
154
155echo '***********************************'
156tail -n 20 log_error
157
Note: See TracBrowser for help on using the repository browser.