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

Annotation 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 - (hide annotations) (download)
Sun Feb 13 00:25:37 2005 UTC (19 years, 3 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 jmc 1.1 #! /bin/sh
2    
3 jmc 1.7 # $Header: /u/gcmpack/MITgcm/verification/cpl_aim+ocn/run_cpl_test,v 1.6 2004/11/07 23:30:32 jmc Exp $
4 jmc 1.1 # $Name: $
5    
6     Np=3
7 jmc 1.5 Opt=' '
8     Opt='-ieee'
9 jmc 1.1 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 jmc 1.6 rm -f genmake_optfile pr_group std_outp
50 jmc 1.1 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 edhill 1.3 cp -p ../../tools/build_options/linux_ia32_ifc+mpi_cg01 genmake_optfile
61 jmc 1.1 echo '==== compile coupler:'
62     cd build_cpl
63     echo ' --- genmake2 (cpl):'
64 jmc 1.5 ../../../tools/genmake2 -of ../genmake_optfile $Opt > TTT.genmake.$$
65 jmc 1.1 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 jmc 1.5 ../../../tools/genmake2 -of ../genmake_optfile $Opt > TTT.genmake.$$
78 jmc 1.1 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 jmc 1.5 ../../../tools/genmake2 -of ../genmake_optfile $Opt > TTT.genmake.$$
91 jmc 1.1 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 jmc 1.7 /bin/rm -r -f rank_0 rank_1 rank_2
107 jmc 1.1 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 jmc 1.7 ./IMPORT_INPUT_FILES
118 jmc 1.1 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 edhill 1.4 # -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 jmc 1.1 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