/[MITgcm]/MITgcm_contrib/nesting_sannino/utils/mk_pgfile.sh
ViewVC logotype

Annotation of /MITgcm_contrib/nesting_sannino/utils/mk_pgfile.sh

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


Revision 1.1 - (hide annotations) (download) (as text)
Sun Nov 28 17:59:03 2010 UTC (14 years, 8 months ago) by jmc
Branch: MAIN
File MIME type: application/x-sh
few useful files and scripts to run simplified Med+Gib nested set-up.

1 jmc 1.1 #! /usr/bin/env bash
2    
3     # $Header: $
4     # $Name: $
5    
6     # Get list of machines
7     #mfile=/tmp/53210.1.darwin/machines
8     mfile=$1
9     if [ -f $mfile ]; then
10     echo 'Machine file == '$mfile
11     else
12     echo 'No machine file '$mfile
13     exit
14     fi
15     ml=( `cat $mfile` )
16    
17     # Set root directory for run
18     #exe_root=/scratch/jmc/nesting
19     exe_root=`pwd`
20    
21     # Settings for driver
22     exe1=${exe_root}/run_driv/mitgcmuv
23     wdir1=${exe_root}/run_driv
24     np1=4
25    
26     # Settings for Med model config
27     exe2=${exe_root}/run_med/mitgcmuv
28     np2=40
29     wdir2=${exe_root}/run_med
30    
31    
32     # Settings for Gib model config
33     exe3=${exe_root}/run_gib/mitgcmuv
34     np3=20
35     wdir3=${exe_root}/run_gib
36    
37     echo "== root_dir: $exe_root"
38     echo "= driver on $np1 procs:"
39     ls -l $exe1
40     echo " in dir: $wdir1"
41     echo "= parent on $np2 procs:"
42     ls -l $exe2
43     echo " in dir: $wdir2"
44     echo "= child on $np3 procs:"
45     ls -l $exe3
46     echo " in dir: $wdir3"
47     npTot=`expr $np1 + $np2 + $np3`
48     echo "== total Nb of procs = $npTot"
49    
50     # remove all rank_N links
51     rm -f pgfile; touch pgfile
52     rm -f rank_[0-9] rank_[0-9][0-9]
53    
54     # Make proc group file for run and link directories
55     i=0
56    
57     #- Driver
58     exe=$exe1
59     wdir=$wdir1
60     ihi=$((${i}+${np1}))
61     echo ${ml[${i}]} 0 ${exe} >> pgfile
62     rdir=`echo $i | awk '{printf "rank_%d", $1}'`
63     echo ln -s $wdir $rdir
64     ln -s $wdir $rdir
65     i=$((${i}+1))
66     while [ $i -lt $ihi ]; do
67     echo ${ml[${i}]} 1 ${exe} >> pgfile
68     rdir=`echo $i | awk '{printf "rank_%d", $1}'`
69     echo ln -s $wdir $rdir
70     ln -s $wdir $rdir
71     i=$((${i}+1))
72     done
73    
74     #- MED
75     exe=${exe2}
76     wdir=$wdir2
77     ihi=$((${i}+${np2}))
78     while [ $i -lt $ihi ]; do
79     echo ${ml[${i}]} 1 ${exe} >> pgfile
80     rdir=`echo $i | awk '{printf "rank_%d", $1}'`
81     echo ln -s $wdir $rdir
82     ln -s $wdir $rdir
83     i=$((${i}+1))
84     done
85    
86     #- GIB
87     exe=${exe3}
88     wdir=$wdir3
89     ihi=$((${i}+${np3}))
90     while [ $i -lt $ihi ]; do
91     echo ${ml[${i}]} 1 ${exe} >> pgfile
92     rdir=`echo $i | awk '{printf "rank_%d", $1}'`
93     echo ln -s $wdir $rdir
94     ln -s $wdir $rdir
95     i=$((${i}+1))
96     done
97     npgfile=${i}
98    
99     source /etc/profile.d/modules.sh
100     module load mitgcm
101     echo '== command line to run:'
102     #echo ' mpirun.ch_mx -pg pgfile -np' $npgfile -wd ${wdir1} ${exe1}
103     echo ' mpirun -pg pgfile -np' $npgfile ${exe1} '>& std_outp'
104    
105    

  ViewVC Help
Powered by ViewVC 1.1.22