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

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

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


Revision 1.2 - (show annotations) (download) (as text)
Mon Dec 6 19:23:23 2010 UTC (14 years, 7 months ago) by jmc
Branch: MAIN
CVS Tags: HEAD
Changes since 1.1: +13 -8 lines
File MIME type: application/x-sh
update notes and mk_pgfile script

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

  ViewVC Help
Powered by ViewVC 1.1.22