/[MITgcm]/MITgcm/verification/cpl_aim+ocn/run_cpl_test
ViewVC logotype

Contents of /MITgcm/verification/cpl_aim+ocn/run_cpl_test

Parent Directory Parent Directory | Revision Log Revision Log | View Revision Graph Revision Graph


Revision 1.7 - (show annotations) (download)
Sun Feb 13 00:25:37 2005 UTC (19 years, 2 months ago) by jmc
Branch: MAIN
CVS Tags: checkpoint57t_post, checkpoint57o_post, checkpoint57v_post, checkpoint57m_post, checkpoint57s_post, checkpoint57k_post, checkpoint57g_post, checkpoint57i_post, checkpoint57y_post, checkpoint57e_post, checkpoint57g_pre, checkpoint57y_pre, checkpoint57f_pre, checkpoint57r_post, checkpoint58, eckpoint57e_pre, checkpoint57h_done, checkpoint57x_post, checkpoint58c_post, checkpoint57w_post, checkpoint57p_post, checkpint57u_post, checkpoint57f_post, checkpoint58a_post, checkpoint57q_post, checkpoint57z_post, checkpoint57j_post, checkpoint58b_post, checkpoint57h_pre, checkpoint57l_post, checkpoint57h_post
Changes since 1.6: +3 -1 lines
updated (import input files from aim.5l_cs/input.thSI)

1 #! /bin/sh
2
3 # $Header: /u/gcmpack/MITgcm/verification/cpl_aim+ocn/run_cpl_test,v 1.6 2004/11/07 23:30:32 jmc Exp $
4 # $Name: $
5
6 Np=3
7 Opt=' '
8 Opt='-ieee'
9 if [ $# -lt 1 ]
10 then
11 echo 'Usage:'`basename $0`' step '
12 echo ' => test coupled set-up on myrinet cluster'
13 echo 'step = 0 : clean all directories'
14 echo 'step = 1 : compile the 3 executables (cpl,ocn,atm)'
15 echo 'step = 2 : copy input files and dir(s)'
16 echo "step = 3 : run on $Np processor"
17 echo 'step = 4 : check the results'
18 exit
19 fi
20 kpr=$1
21 dir=`pwd`
22
23 #- only works from a 3 nodes PBS bach session ( qsub -I -l nodes=3:p4 )
24 # on myrinet cluster:
25 xx=`hostname | sed 's/[0-9]/X/g'`
26 if test $xx != 'myrinet-X-XX'
27 then
28 echo ' hostname='`hostname`
29 echo 'for now, works only on myrinet cluster'
30 exit 9
31 fi
32 if test 'dummy'$PBS_NODEFILE = 'dummy'
33 then
34 echo ' $PBS_NODEFILE not defined'
35 echo "for now, works only from a $Np nodes PBS bach session"
36 exit 8
37 else ncpus=`wc -l $PBS_NODEFILE | awk '{print $1}'`
38 if test $ncpus != $Np ; then
39 echo ' Nb of nodes from $PBS_NODEFILE =' $ncpus
40 echo "for now, works only from a $Np nodes PBS bach session"
41 exit 8
42 fi
43 fi
44
45 #============================================================================
46
47 if test $kpr = 0
48 then
49 rm -f genmake_optfile pr_group std_outp
50 rm -f build_???/TTT.*make.* build_???/TTT.mkdepend.*
51 /bin/rm -r -f rank_0 rank_1 rank_2
52 if test -f build_cpl/Makefile ; then cd build_cpl ; make CLEAN ; cd .. ; fi
53 if test -f build_ocn/Makefile ; then cd build_ocn ; make CLEAN ; cd .. ; fi
54 if test -f build_atm/Makefile ; then cd build_atm ; make CLEAN ; cd .. ; fi
55 fi
56
57 if test $kpr = 1
58 then
59
60 cp -p ../../tools/build_options/linux_ia32_ifc+mpi_cg01 genmake_optfile
61 echo '==== compile coupler:'
62 cd build_cpl
63 echo ' --- genmake2 (cpl):'
64 ../../../tools/genmake2 -of ../genmake_optfile $Opt > TTT.genmake.$$
65 tail -5 TTT.genmake.$$
66 echo ' --- make depend (cpl):'
67 make depend > TTT.mkdepend.$$
68 tail -5 TTT.mkdepend.$$
69 echo ' --- make (cpl):'
70 make > TTT.make.$$ 2>&1
71 tail -10 TTT.make.$$
72 echo ' ' ; cd $dir
73
74 echo '==== compile OGCM:'
75 cd build_ocn
76 echo ' --- genmake2 (ocn):'
77 ../../../tools/genmake2 -of ../genmake_optfile $Opt > TTT.genmake.$$
78 tail -5 TTT.genmake.$$
79 echo ' --- make depend (ocn):'
80 make depend > TTT.mkdepend.$$
81 tail -10 TTT.mkdepend.$$
82 echo ' --- make (ocn):'
83 make > TTT.make.$$ 2>&1
84 tail -10 TTT.make.$$
85 echo ' ' ; cd $dir
86
87 echo '==== compile AGCM:'
88 cd build_atm
89 echo ' --- genmake2 (atm):'
90 ../../../tools/genmake2 -of ../genmake_optfile $Opt > TTT.genmake.$$
91 tail -5 TTT.genmake.$$
92 echo ' --- make depend (atm):'
93 make depend > TTT.mkdepend.$$
94 tail -10 TTT.mkdepend.$$
95 echo ' --- make (atm):'
96 make > TTT.make.$$ 2>&1
97 tail -10 TTT.make.$$
98 echo ' ' ; cd $dir
99
100 ls -l build_???/mitgcmuv
101
102 fi
103
104 if test $kpr = 2
105 then
106 /bin/rm -r -f rank_0 rank_1 rank_2
107 cp -p -r input_cpl rank_0
108 cp -p -r input_ocn rank_1
109 cp -p -r input_atm rank_2
110
111 cd rank_1
112 ./IMPORT_INPUT_FILES
113 cd $dir
114
115 cd rank_2
116 ./SHARE_OCN_GRID '../rank_1'
117 ./IMPORT_INPUT_FILES
118 cd $dir
119
120 fi
121
122 if test $kpr = 3
123 then
124 ROOTDIR=$dir
125 rm -f rank_?/pickup*.ckptA.00?.00?.??ta
126 echo $ROOTDIR
127 tmpfil=TTT.$$
128
129 echo $PBS_NODEFILE
130 list=`cat $PBS_NODEFILE`
131 rm -f pr_group ; touch pr_group
132 nc=0 ; dd1=cpl ;
133 for xx in $list
134 do
135 echo $xx $nc $dir/build_$dd1/mitgcmuv >> pr_group
136 if test $nc = 0 ; then dd1=ocn ; else dd1=atm ; fi
137 nc=1
138 done
139
140 cd $ROOTDIR
141 # -wd $ROOTDIR
142 /usr/local/pkg/mpi/mpi-1.2.4..8a-gm-1.5/pgi/bin/mpirun.ch_gm -pg pr_group --gm-kill 5 -v ./build_cpl/mitgcmuv > std_outp 2>&1
143 tail -20 std_outp
144 ls -l rank_?/pickup*.ckptA.001.001.data
145
146 fi
147
148 if test $kpr = 4
149 then
150
151 if test -f rank_1/STDOUT.0000
152 then echo '==> check Ocean output:'
153 /home/jmc/bin/comp_res rank_1/STDOUT.0000 results/ocnSTDOUT.0000
154 echo ' '
155 else echo 'No Ocean output file in rank_1' ; fi
156
157 if test -f rank_2/STDOUT.0000
158 then
159 echo '==> check Atmos output:'
160 /home/jmc/bin/comp_res rank_2/STDOUT.0000 results/atmSTDOUT.0000
161 echo '==> check Land output:'
162 /home/jmc/bin/comp_res rank_2/STDOUT.0000 results/atmSTDOUT.0000 L
163 echo '==> check thSIce output:'
164 /home/jmc/bin/comp_res rank_2/STDOUT.0000 results/atmSTDOUT.0000 I
165 echo ' '
166 else echo 'No Atmos output file in rank_1' ; fi
167
168 fi
169
170 exit 0

  ViewVC Help
Powered by ViewVC 1.1.22