diff -rupN WW3_314_10/aux/w3adc.f WW3_314_11/aux/w3adc.f --- WW3_314_10/aux/w3adc.f 2012-10-02 21:43:12.000000000 -0400 +++ WW3_314_11/aux/w3adc.f 2012-10-02 21:41:48.000000000 -0400 @@ -132,7 +132,7 @@ C & QUOTES * CHARACTER*20 TEST0, TSTSTR - CHARACTER*60 FNAMEI, FNAMEO, FNAMER + CHARACTER*120 FNAMEI, FNAMEO, FNAMER CHARACTER*72 INSTR CHARACTER*140 NEWLNE, OLDLNE CHARACTER*200 SWTCHS diff -rupN WW3_314_10/bin/comp.Intel WW3_314_11/bin/comp.Intel --- WW3_314_10/bin/comp.Intel 2012-10-02 21:43:11.000000000 -0400 +++ WW3_314_11/bin/comp.Intel 2012-10-02 21:41:48.000000000 -0400 @@ -31,11 +31,10 @@ # sec. 3.a : Provide correct error capturing. # # sec. 3.d : Remove unnecessary files. # # # -# - This version is made for the Intel ifort version 8.1 on a Pentium 4 # -# processor. # +# - This version is made for the Intel ifort version 12 on Xeon Westmere # # # # Hendrik L. Tolman # -# February 2005 # +# February 2012 # # --------------------------------------------------------------------------- # # 1. Preparations # # --------------------------------------------------------------------------- # @@ -79,8 +78,8 @@ # 2.b.1 Build options and determine compiler name # Note that all but GrADS output is forced to big endian data -# opt="-c -list -O3 -unroll -tpp7 -Zp8 -module $path_m" - opt="-c -g CB -list -O3 -module $path_m" + opt="-c -list -O3 -xSSE4.2 -ip -module $path_m" +# opt="-c -list -O0 -g -traceback -check all -fpe0 -ftrapuv -module $path_m" if [ "$name" != 'gx_outp' ] && [ "$name" != 'gx_outf' ] then @@ -89,7 +88,7 @@ if [ "$mpi_mod" = 'yes' ] then - comp=mpif90 + comp=ifort else comp=ifort fi @@ -106,10 +105,10 @@ # 2.b.2 Process listing -# if [ -s $name.lst ] -# then -# mv $name.lst $name.l -# fi + if [ -s $name.lst ] + then + mv $name.lst $name.l + fi # 2.b.3 Add test output to listing for later viewing @@ -133,8 +132,8 @@ if [ -s $name.err ] then - nr_err=`grep 'fortcom: Error:' $name.err | wc -l | awk '{ print $1 }'` - nr_war=`grep 'fortcom: Warning:' $name.err | wc -l | awk '{ print $1 }'` + nr_err=`grep 'error' $name.err | wc -l | awk '{ print $1 }'` + nr_war=`grep 'warning' $name.err | wc -l | awk '{ print $1 }'` else if [ "$OK" != '0' ] then diff -rupN WW3_314_10/bin/comp.Portland WW3_314_11/bin/comp.Portland --- WW3_314_10/bin/comp.Portland 2012-10-02 21:43:11.000000000 -0400 +++ WW3_314_11/bin/comp.Portland 2012-10-02 21:41:48.000000000 -0400 @@ -31,11 +31,10 @@ # sec. 3.a : Provide correct error capturing. # # sec. 3.d : Remove unnecessary files. # # # -# - This version is made for the Portland pgf90 compiler version 5.0-2 # -# on a Pentium 4 processor. # +# - This version is made for the Portland pgf90 compiler versions 6 and up. # # # # Hendrik L. Tolman # -# February 2005 # +# February 2012 # # --------------------------------------------------------------------------- # # 1. Preparations # # --------------------------------------------------------------------------- # @@ -79,14 +78,7 @@ # 2.b.1 Build options and determine compiler name # Note that all but GrADS output is forced to big endian data - ver=`pgf90 -V | grep 'pgf90 ' | awk '{print $2}' | cut -c1-2` - - if [ "$ver" = '5.' ] - then - opt="-c -Mlist -fast -fastsse -module $path_m" - else - opt="-c -Mlist -fast -module $path_m" - fi + opt="-c -Mlist -fast -module $path_m" # opt="-c -C -g -Mlist -module $path_m" diff -rupN WW3_314_10/bin/install_ww3_svn WW3_314_11/bin/install_ww3_svn --- WW3_314_10/bin/install_ww3_svn 2012-10-02 21:43:11.000000000 -0400 +++ WW3_314_11/bin/install_ww3_svn 2012-10-02 21:41:48.000000000 -0400 @@ -1,4 +1,4 @@ -#!/bin/sh +#!/bin/sh --login # --------------------------------------------------------------------------- # # install_ww3_svn : install WAVEWATCH III in the present directory. # # Working from svn server. # @@ -11,9 +11,9 @@ # for this script to work. # # # # Hendrik L. Tolman # -# July 2010 # +# February 2012 # # # -# Copyright 2009-2010 National Weather Service (NWS), # +# Copyright 2009-2012 National Weather Service (NWS), # # National Oceanic and Atmospheric Administration. All rights # # reserved. WAVEWATCH III is a trademark of the NWS. # # No unauthorized use without permission. # @@ -46,8 +46,7 @@ then set `grep WWATCH3_DIR $ww3_env` ; shift ; main_dir="$*" else - echo 'No install directory defined yet. The install directory has' - echo 'to be an existing directory containing the tar files.' ; echo ' ' + echo 'No install directory defined yet.' ; echo ' ' main_dir=nodir.$$ until [ -d $main_dir ] do diff -rupN WW3_314_10/bin/install_wwatch3 WW3_314_11/bin/install_wwatch3 --- WW3_314_10/bin/install_wwatch3 2012-10-02 21:43:11.000000000 -0400 +++ WW3_314_11/bin/install_wwatch3 2012-10-02 21:41:48.000000000 -0400 @@ -1,13 +1,13 @@ -#!/bin/sh +#!/bin/sh --login # --------------------------------------------------------------------------- # # install_wwatch3 : install WAVEWATCH III in the present directory. # # Working from tar files (and wwatch3_arc). # # # # Hendrik L. Tolman # # December 2006 # -# July 2010 # +# February 2012 # # # -# Copyright 2009-2010 National Weather Service (NWS), # +# Copyright 2009-2012 National Weather Service (NWS), # # National Oceanic and Atmospheric Administration. All rights # # reserved. WAVEWATCH III is a trademark of the NWS. # # No unauthorized use without permission. # diff -rupN WW3_314_10/bin/link.Intel WW3_314_11/bin/link.Intel --- WW3_314_10/bin/link.Intel 2012-10-02 21:43:11.000000000 -0400 +++ WW3_314_11/bin/link.Intel 2012-10-02 21:41:48.000000000 -0400 @@ -16,11 +16,11 @@ # following parts of this scripts : # # sec. 3 : Provide correct link command # # # -# - This version is made for the Intel ifort version 8.1 on a Pentium 4 # +# - This version is made for the Intel ifort version 12 on nehalem. # # processor. # # # # Hendrik L. Tolman # -# February 2005 # +# February 2012 # # --------------------------------------------------------------------------- # # 1. Preparations # # --------------------------------------------------------------------------- # @@ -100,11 +100,12 @@ # 3.a Build options and determine compiler name # No GRIB libraries for this one - opt="-O3 -Zp8 -tpp7 -o $prog" + opt="-O3 -xSSE4.2 -ip -o $prog" +# opt="-O0 -g -traceback -check all -fpe0 -ftrapuv -o $prog" if [ "$mpi_mod" = 'yes' ] then - comp=mpif90 + comp='ifort -lmpi' else comp=ifort fi diff -rupN WW3_314_10/bin/ln3 WW3_314_11/bin/ln3 --- WW3_314_10/bin/ln3 2012-10-02 21:43:11.000000000 -0400 +++ WW3_314_11/bin/ln3 2012-10-02 21:41:48.000000000 -0400 @@ -4,9 +4,9 @@ # directory. Now also looks in bin directory. # # # # Hendrik L. Tolman # -# May 2009 # +# February 2012 # # # -# Copyright 2009 National Weather Service (NWS), # +# Copyright 2009-2012 National Weather Service (NWS), # # National Oceanic and Atmospheric Administration. All rights # # reserved. WAVEWATCH III is a trademark of the NWS. # # No unauthorized use without permission. # @@ -68,11 +68,11 @@ ln -s ../bin/$file . found=`expr $found + 1` fi - if test -f ../doc90/$file + if test -f ../test/$file then rm -f $file - echo "make link to $file in doc90 dir." - ln -s ../doc90/$file . + echo "make link to $file in test dir." + ln -s ../test/$file . found=`expr $found + 1` fi done diff -rupN WW3_314_10/bin/make_MPI WW3_314_11/bin/make_MPI --- WW3_314_10/bin/make_MPI 2012-10-02 21:43:11.000000000 -0400 +++ WW3_314_11/bin/make_MPI 2012-10-02 21:41:48.000000000 -0400 @@ -6,9 +6,9 @@ # # # Hendrik L. Tolman # # April 2010 # -# Aug. 2010 # +# Feb. 2012 # # # -# Copyright 2010 National Weather Service (NWS), # +# Copyright 2010-2012 National Weather Service (NWS), # # National Oceanic and Atmospheric Administration. All rights # # reserved. WAVEWATCH III is a trademark of the NWS. # # No unauthorized use without permission. # @@ -60,11 +60,6 @@ exit fi - if test ! -d arc - then - mkdir arc - fi - # --------------------------------------------------------------------------- # # 2. Process switch files # # --------------------------------------------------------------------------- # @@ -80,20 +75,20 @@ cp switch.shrd switch w3_make ww3_grid ww3_strt ww3_prep ww3_outf ww3_outp ww3_trck ww3_grib \ - gx_outf gx_outp + ww3_gint gx_outf gx_outp # --------------------------------------------------------------------------- # # 3. Compile MPI codes # # --------------------------------------------------------------------------- # cp switch.MPI switch - w3_make ww3_shel ww3_multi ww3_sbs1 + w3_make ww3_shel ww3_multi # ww3_sbs1 # --------------------------------------------------------------------------- # # 4. Reset switch file # # --------------------------------------------------------------------------- # -# cp switch.shrd switch + cp switch.shrd switch # cp switch.hold switch # --------------------------------------------------------------------------- # diff -rupN WW3_314_10/bin/w3_clean WW3_314_11/bin/w3_clean --- WW3_314_10/bin/w3_clean 2012-10-02 21:43:11.000000000 -0400 +++ WW3_314_11/bin/w3_clean 2012-10-02 21:41:48.000000000 -0400 @@ -5,9 +5,9 @@ # # # use : w3_clean # # Hendrik L. Tolman # -# May 2009 # +# Feb. 2012 # # # -# Copyright 2009 National Weather Service (NWS), # +# Copyright 2009-2012 National Weather Service (NWS), # # National Oceanic and Atmospheric Administration. All rights # # reserved. WAVEWATCH III is a trademark of the NWS. # # No unauthorized use without permission. # @@ -40,6 +40,7 @@ cd $temp_dir rm -f core + rm -f core.* rm -fr coredir.* rm -f *.f rm -f *.f90 @@ -70,6 +71,7 @@ rm -f buoy.data rm -f fort.* rm -f times.* + rm -f xref.db # --------------------------------------------------------------------------- # # 3. Work and test directories # @@ -79,6 +81,7 @@ do cd $dir rm -f core + rm -f core.* rm -fr coredir.* rm -f mod_def.ww3 rm -f restart*.ww3 @@ -125,6 +128,7 @@ rm -f ww3.* rm -f *.gs_tmpl rm -f times.* + rm -f map.gs done # End of w3_clean ----------------------------------------------------------- # diff -rupN WW3_314_10/inp/ww3_outp.inp WW3_314_11/inp/ww3_outp.inp --- WW3_314_10/inp/ww3_outp.inp 2012-10-02 21:43:07.000000000 -0400 +++ WW3_314_11/inp/ww3_outp.inp 2012-10-02 21:41:43.000000000 -0400 @@ -35,7 +35,7 @@ $ - Unit number for transfer fi $ name. $ - Flag for unformatted transfer file. $ - 3 0. 0. 33 F + 1 0. 0. 33 F $ $ The transfer file contains records with the following contents. $ diff -rupN WW3_314_10/test/mww3_test_01 WW3_314_11/test/mww3_test_01 --- WW3_314_10/test/mww3_test_01 2012-10-02 21:43:06.000000000 -0400 +++ WW3_314_11/test/mww3_test_01 2012-10-02 21:41:42.000000000 -0400 @@ -15,37 +15,51 @@ # No other optional switches should be used. # # # # Remarks : # -# - Grads scripts do not display but prodice .eps files. # +# - Grads scripts do not display but produce .eps files. # # - Script set up for parallel running : # # a) For cluster with mpirun activate mpirun command lines and set # # environment with valiables MPI and proc in section 0. # # b) For IBM with poe, activale poe command lines and set environment # # variables in poe jobcards at the top of the scripts. # +# c) For SGI with MPIT several environment setting are needed in the # +# head of the script, as well as job cards and using the mpiexec_mpt # +# to start the code to run in the parallel environment. # +# d) In present form, IBM qsub directives disabled to avoid unwanted # +# translation by msub on zeus. # # # # Hendrik Tolman, Jun 2002 # -# Last Mod : Nov 2007 # +# Last Mod : March 2012 # # # -# Copyright 2009 National Weather Service (NWS), # +# Copyright 2009-2012 National Weather Service (NWS), # # National Oceanic and Atmospheric Administration. All rights # # reserved. WAVEWATCH III is a trademark of the NWS. # # No unauthorized use without permission. # # # ############################################################################# -#@ shell=/bin/sh -#@ job_name=mww3_test_01 -#@ output=mww3_test_01.out -#@ error=mww3_test_01.out -#@ notification=never -#@ class=dev -#@ network.MPI=csss,shared,us -#@ total_tasks=4 -#@ node=1 -#@ job_type=parallel -#@ wall_clock_limit=00:01:00 -#@ resources=ConsumableCpus(1) ConsumableMemory(500 MB) -#@ account_no=WAV-T2O -#@ queue +# #@ shell=/bin/sh +# #@ job_name=mww3_test_01 +# #@ output=mww3_test_01.out +# #@ error=mww3_test_01.out +# #@ notification=never +# #@ class=dev +# #@ network.MPI=csss,shared,us +# #@ total_tasks=4 +# #@ node=1 +# #@ job_type=parallel +# #@ wall_clock_limit=00:01:00 +# #@ resources=ConsumableCpus(1) ConsumableMemory(500 MB) +# #@ account_no=WAV-T2O +# #@ queue + +#PBS -l procs=4 +# #PBS -l mem=1G +#PBS -q batch +#PBS -l walltime=05:00 +#PBS -A omd +#PBS -N mww3_test_01 +#PBS -j oe +#PBS -o mww3_test_01.out # 0. Preparations ----------------------------------------------------------- @@ -54,8 +68,14 @@ ww3_env='.wwatch3.env' # setup file grads='yes' # run grads scripts - MPI='no' # run ww3_shel in MPI mode - proc=4 + MPI='yes' # run ww3_shel in MPI mode + proc=4 # only used for mpirun + +# zeus MPIT settings + + MPI_BUFS_PER_PROC=128 + MPI_BUFS_PER_HOST=128 + MPI_GROUP_MAX=128 # 0.a Set-up variables @@ -75,7 +95,7 @@ path_e="$main_dir/exe" # path for executables path_a="$main_dir/aux" # path for aux files and scripts path_o="$main_dir/test" # path for output files -# path_o="$main_dir/work" + path_o="$main_dir/work" # 0.b Clean-up @@ -368,7 +388,8 @@ EOF if [ "$MPI" = 'yes' ] then - mpirun -np $proc $path_e/ww3_shel + mpiexec_mpt -np $PBS_NP $path_e/ww3_shel +# mpirun -np $proc $path_e/ww3_shel # poe $path_e/ww3_shel else $path_e/ww3_shel @@ -803,7 +824,7 @@ EOF echo ' ' ; echo "Files in $path_o :" ; echo ' ' cd $path_o ls -l ww3_????.out gx_????.out - ls -l *.ww3 ww3.* *.eps + ls -l *.ww3 ww3.* *.eps *.gs echo ' ' ; echo ' ' echo ' ======> END OF WAVEWATCH III <====== ' diff -rupN WW3_314_10/test/mww3_test_02 WW3_314_11/test/mww3_test_02 --- WW3_314_10/test/mww3_test_02 2012-10-02 21:43:06.000000000 -0400 +++ WW3_314_11/test/mww3_test_02 2012-10-02 21:41:42.000000000 -0400 @@ -32,31 +32,45 @@ # environment with valiables MPI and proc in section 0. # # b) For IBM with poe, activale poe command lines and set environment # # variables in poe jobcards at the top of the scripts. # +# c) For SGI with MPIT several environment setting are needed in the # +# head of the script, as well as job cards and using the mpiexec_mpt # +# to start the code to run in the parallel environment. # +# d) In present form, IBM qsub directives are disabled to avoid unwanted # +# translation by msub on zeus. # # # # Hendrik Tolman, Sep 2005 # -# Last Mod : Jul 2007 # +# Last Mod : March 2012 # # # -# Copyright 2009 National Weather Service (NWS), # +# Copyright 2009-2012 National Weather Service (NWS), # # National Oceanic and Atmospheric Administration. All rights # # reserved. WAVEWATCH III is a trademark of the NWS. # # No unauthorized use without permission. # # # ############################################################################# -#@ shell=/bin/sh -#@ job_name=mww3_test_02 -#@ output=mww3_test_02.out -#@ error=mww3_test_02.out -#@ notification=never -#@ class=dev -#@ network.MPI=csss,shared,us -#@ total_tasks=6 -#@ node=1 -#@ job_type=parallel -#@ wall_clock_limit=00:01:00 -#@ resources=ConsumableCpus(1) ConsumableMemory(500 MB) -#@ account_no=WAV-T2O -#@ queue +# #@ shell=/bin/sh +# #@ job_name=mww3_test_02 +# #@ output=mww3_test_02.out +# #@ error=mww3_test_02.out +# #@ notification=never +# #@ class=dev +# #@ network.MPI=csss,shared,us +# #@ total_tasks=6 +# #@ node=1 +# #@ job_type=parallel +# #@ wall_clock_limit=00:01:00 +# #@ resources=ConsumableCpus(1) ConsumableMemory(500 MB) +# #@ account_no=WAV-T2O +# #@ queue + +#PBS -l procs=6 +# #PBS -l mem=1G +#PBS -q batch +#PBS -l walltime=05:00 +#PBS -A omd +#PBS -N mww3_test_02 +#PBS -j oe +#PBS -o mww3_test_02.out # 0. Preparations ----------------------------------------------------------- @@ -87,7 +101,13 @@ t_end='19680608 000000' ; tn='49' MPI='yes' # run ww3_multi in MPI mode - proc=6 + proc=6 # used for mpirun only + +# zeus MPIT settings + + MPI_BUFS_PER_PROC=128 + MPI_BUFS_PER_HOST=128 + MPI_GROUP_MAX=128 # 0.a Set-up variables @@ -107,7 +127,7 @@ path_e="$main_dir/exe" # path for executables path_a="$main_dir/aux" # path for aux files and scripts path_o="$main_dir/test" # path for output files -# path_o="$main_dir/work" + path_o="$main_dir/work" # 0.b Clean-up @@ -415,7 +435,8 @@ EOF if [ "$MPI" = 'yes' ] then - mpirun -np $proc $path_e/ww3_shel # > $path_o/ww3_shel.$mod.out + mpiexec_mpt -np $PBS_NP $path_e/ww3_shel # > $path_o/ww3_shel.$mod.out +# mpirun -np $proc $path_e/ww3_shel # > $path_o/ww3_shel.$mod.out # poe $path_e/ww3_shel # > $path_o/ww3_shel.$mod.out else $path_e/ww3_shel # > $path_o/ww3_shel.$mod.out @@ -440,7 +461,8 @@ EOF if [ "$MPI" = 'yes' ] then - mpirun -np $proc $path_e/ww3_multi # > $path_o/ww3_multi.out + mpiexec_mpt -np $PBS_NP $path_e/ww3_multi # > $path_o/ww3_multi.out +# mpirun -np $proc $path_e/ww3_multi # > $path_o/ww3_multi.out # poe $path_e/ww3_multi # > $path_o/ww3_multi.out else $path_e/ww3_multi # > $path_o/ww3_multi.out @@ -465,7 +487,8 @@ EOF if [ "$MPI" = 'yes' ] then - mpirun -np $proc $path_e/ww3_shel # > $path_o/ww3_shel.$mod2.out + mpiexec_mpt -np $PBS_NP $path_e/ww3_shel # > $path_o/ww3_shel.$mod2.out +# mpirun -np $proc $path_e/ww3_shel # > $path_o/ww3_shel.$mod2.out # poe $path_e/ww3_shel # > $path_o/ww3_shel.$mod2.out else $path_e/ww3_shel # > $path_o/ww3_shel.$mod2.out diff -rupN WW3_314_10/test/mww3_test_03 WW3_314_11/test/mww3_test_03 --- WW3_314_10/test/mww3_test_03 2012-10-02 21:43:06.000000000 -0400 +++ WW3_314_11/test/mww3_test_03 2012-10-02 21:41:42.000000000 -0400 @@ -30,31 +30,45 @@ # environment with valiables MPI and proc in section 0. # # b) For IBM with poe, activale poe command lines and set environment # # variables in poe jobcards at the top of the scripts. # +# c) For SGI with MPIT several environment setting are needed in the # +# head of the script, as well as job cards and using the mpiexec_mpt # +# to start the code to run in the parallel environment. # +# d) In present form, IBM qsub directives disabled to avoid unwanted # +# translation by msub on zeus. # # # -# Hendrik Tolman, Feb 2006 # -# Last Mod : Jul 2006 # +# Hendrik Tolman, Jun 2002 # +# Last Mod : March 2012 # # # -# Copyright 2009 National Weather Service (NWS), # +# Copyright 2009-2012 National Weather Service (NWS), # # National Oceanic and Atmospheric Administration. All rights # # reserved. WAVEWATCH III is a trademark of the NWS. # # No unauthorized use without permission. # # # ############################################################################# -#@ shell=/bin/sh -#@ job_name=mww3_test_03 -#@ output=mww3_test_03.out -#@ error=mww3_test_03.out -#@ notification=never -#@ class=dev -#@ network.MPI=csss,shared,us -#@ total_tasks=6 -#@ node=1 -#@ job_type=parallel -#@ wall_clock_limit=00:01:00 -#@ resources=ConsumableCpus(1) ConsumableMemory(500 MB) -#@ account_no=WAV-T2O -#@ queue +# #@ shell=/bin/sh +# #@ job_name=mww3_test_03 +# #@ output=mww3_test_03.out +# #@ error=mww3_test_03.out +# #@ notification=never +# #@ class=dev +# #@ network.MPI=csss,shared,us +# #@ total_tasks=6 +# #@ node=1 +# #@ job_type=parallel +# #@ wall_clock_limit=00:01:00 +# #@ resources=ConsumableCpus(1) ConsumableMemory(500 MB) +# #@ account_no=WAV-T2O +# #@ queue + +#PBS -l procs=6 +# #PBS -l mem=1G +#PBS -q batch +#PBS -l walltime=05:00 +#PBS -A omd +#PBS -N mww3_test_03 +#PBS -j oe +#PBS -o mww3_test_03.out # 0. Preparations ----------------------------------------------------------- @@ -62,6 +76,10 @@ ww3_env='.wwatch3.env' # setup file +# f77=f77 +# f77=pgf90 + f77=ifort + lowm='no' # master low-res map instead of three high='yes' # Add high resolution grids @@ -145,11 +163,17 @@ # t_end='19680606 120000' ; tn='13' MPI='yes' # run ww3_multi in MPI mode - proc=6 + proc=6 # used for mpirun only PROP2="$ \&PRO2 DTIME = 21600. \/" PROP3="$ \&PRO3 WDTHCG = 0., WDTHTH = 0. \/" +# zeus MPIT settings + + MPI_BUFS_PER_PROC=128 + MPI_BUFS_PER_HOST=128 + MPI_GROUP_MAX=128 + # 0.a Set-up variables cd @@ -168,7 +192,7 @@ path_e="$main_dir/exe" # path for executables path_a="$main_dir/aux" # path for aux files and scripts path_o="$main_dir/test" # path for output files -# path_o="$main_dir/work" + path_o="$main_dir/work" if [ "$lowm" = 'yes' ] then @@ -382,8 +406,8 @@ $LBY if ( mask(ix,iy) .eq. 1 ) t end EOF - f77 grid1.f -o grid1.x 2> /dev/null - f77 grid2.f -o grid2.x 2> /dev/null + $f77 grid1.f -o grid1.x # 2> /dev/null + $f77 grid2.f -o grid2.x # 2> /dev/null rm -f grid1.f grid2.f @@ -475,19 +499,19 @@ EOF do case $mod in 'low0') echo " 'low0' $flags 1 1 0.00 1.00 F" >> $inp ;; - 'low1') echo " 'low1' $flags 1 1 0.00 0.33 F" >> $inp ;; - 'low2') echo " 'low2' $flags 1 1 0.33 0.67 F" >> $inp ;; - 'low3') echo " 'low3' $flags 1 1 0.67 1.00 F" >> $inp ;; -# 'low1') echo " 'low1' $flags 1 1 0.00 1.00 F" >> $inp ;; -# 'low2') echo " 'low2' $flags 1 1 0.00 1.00 F" >> $inp ;; -# 'low3') echo " 'low3' $flags 1 1 0.00 1.00 F" >> $inp ;; +# 'low1') echo " 'low1' $flags 1 1 0.00 0.33 F" >> $inp ;; +# 'low2') echo " 'low2' $flags 1 1 0.33 0.67 F" >> $inp ;; +# 'low3') echo " 'low3' $flags 1 1 0.67 1.00 F" >> $inp ;; + 'low1') echo " 'low1' $flags 1 1 0.00 1.00 F" >> $inp ;; + 'low2') echo " 'low2' $flags 1 1 0.00 1.00 F" >> $inp ;; + 'low3') echo " 'low3' $flags 1 1 0.00 1.00 F" >> $inp ;; 'hgh0') echo " 'hgh0' $flags 2 1 0.00 1.00 F" >> $inp ;; - 'hgh1') echo " 'hgh1' $flags 2 1 0.00 0.33 F" >> $inp ;; - 'hgh2') echo " 'hgh2' $flags 2 1 0.33 0.67 F" >> $inp ;; - 'hgh3') echo " 'hgh3' $flags 2 1 0.67 1.00 F" >> $inp ;; -# 'hgh1') echo " 'hgh1' $flags 2 1 0.00 1.00 F" >> $inp ;; -# 'hgh2') echo " 'hgh2' $flags 2 1 0.00 1.00 F" >> $inp ;; -# 'hgh3') echo " 'hgh3' $flags 2 1 0.00 1.00 F" >> $inp ;; +# 'hgh1') echo " 'hgh1' $flags 2 1 0.00 0.33 F" >> $inp ;; +# 'hgh2') echo " 'hgh2' $flags 2 1 0.33 0.67 F" >> $inp ;; +# 'hgh3') echo " 'hgh3' $flags 2 1 0.67 1.00 F" >> $inp ;; + 'hgh1') echo " 'hgh1' $flags 2 1 0.00 1.00 F" >> $inp ;; + 'hgh2') echo " 'hgh2' $flags 2 1 0.00 1.00 F" >> $inp ;; + 'hgh3') echo " 'hgh3' $flags 2 1 0.00 1.00 F" >> $inp ;; esac done @@ -520,7 +544,8 @@ EOF if [ "$MPI" = 'yes' ] then - mpirun -np $proc $path_e/ww3_multi # > $path_o/ww3_multi.out + mpiexec_mpt -np $PBS_NP $path_e/ww3_multi # > $path_o/ww3_multi.out +# mpirun -np $proc $path_e/ww3_multi # > $path_o/ww3_multi.out # poe $path_e/ww3_multi # > $path_o/ww3_multi.out else $path_e/ww3_multi # > $path_o/ww3_multi.out diff -rupN WW3_314_10/test/mww3_test_04 WW3_314_11/test/mww3_test_04 --- WW3_314_10/test/mww3_test_04 2012-10-02 21:43:06.000000000 -0400 +++ WW3_314_11/test/mww3_test_04 2012-10-02 21:41:42.000000000 -0400 @@ -38,31 +38,45 @@ # environment with valiables MPI and proc in section 0. # # b) For IBM with poe, activale poe command lines and set environment # # variables in poe jobcards at the top of the scripts. # +# c) For SGI with MPIT several environment setting are needed in the # +# head of the script, as well as job cards and using the mpiexec_mpt # +# to start the code to run in the parallel environment. # +# d) In present form, IBM qsub directives disabled to avoid unwanted # +# translation by msub on zeus. # # # -# Hendrik Tolman, Nov 2005 # -# Last Mod : Nov 2007 # +# Hendrik Tolman, Jun 2002 # +# Last Mod : March 2012 # # # -# Copyright 2009 National Weather Service (NWS), # +# Copyright 2009-2012 National Weather Service (NWS), # # National Oceanic and Atmospheric Administration. All rights # # reserved. WAVEWATCH III is a trademark of the NWS. # # No unauthorized use without permission. # # # ############################################################################# -#@ shell=/bin/sh -#@ job_name=mww3_test_04 -#@ output=mww3_test_04.out -#@ error=mww3_test_04.out -#@ notification=never -#@ class=dev -#@ network.MPI=csss,shared,us -#@ total_tasks=6 -#@ node=1 -#@ job_type=parallel -#@ wall_clock_limit=00:03:00 -#@ resources=ConsumableCpus(1) ConsumableMemory(500 MB) -#@ account_no=WAV-T2O -#@ queue +# #@ shell=/bin/sh +# #@ job_name=mww3_test_04 +# #@ output=mww3_test_04.out +# #@ error=mww3_test_04.out +# #@ notification=never +# #@ class=dev +# #@ network.MPI=csss,shared,us +# #@ total_tasks=6 +# #@ node=1 +# #@ job_type=parallel +# #@ wall_clock_limit=00:03:00 +# #@ resources=ConsumableCpus(1) ConsumableMemory(500 MB) +# #@ account_no=WAV-T2O +# #@ queue + +#PBS -l procs=6 +# #PBS -l mem=1G +#PBS -q batch +#PBS -l walltime=05:00 +#PBS -A omd +#PBS -N mww3_test_04 +#PBS -j oe +#PBS -o mww3_test_04.out # 0. Preparations ----------------------------------------------------------- @@ -70,6 +84,10 @@ ww3_env='.wwatch3.env' # setup file +# f77=f77 +# f77=pgf90 + f77=ifort + shoal='no ' # Use shoal in grid (otherwise deep) dmin=' 15.' # Minimum depth, if <0, there be a shoal. @@ -92,12 +110,12 @@ # t_end='19680606 060000' ; tn='7' # t_end='19680606 120000' ; tn='13' # t_end='19680607 000000' ; tn='25' - t_end='19680607 120000' ; tn='37' - t_end='19680607 120000' ; tn='109' +# t_end='19680607 120000' ; tn='37' # t_end='19680608 000000' ; tn='49' + t_end='19680607 120000' ; tn='109' - MPI='no' # run ww3_shel and ww3_multi in MPI mode - proc=4 + MPI='yes' # run ww3_shel and ww3_multi in MPI mode + proc=4 # used for mpirun only PRO2=' &PRO2 DTIME = 7200. /' PRO3=' &PRO3 WDTHCG = 1.50, WDTHTH = 1.50 /' @@ -149,7 +167,7 @@ EOF if [ "$mode" = 'single' ] then - uni_pts='on' + uni_pts='no' fi if [ "$uni_pt" = 'yes' ] @@ -163,6 +181,12 @@ EOF points= fi +# zeus MPIT settings + + MPI_BUFS_PER_PROC=128 + MPI_BUFS_PER_HOST=128 + MPI_GROUP_MAX=128 + # 0.a Set-up variables path_h=`pwd` @@ -312,7 +336,7 @@ c end EOF - f77 grid.f + $f77 grid.f ./a.out @@ -561,7 +585,7 @@ c end EOF - f77 current.f + $f77 current.f ./a.out @@ -683,7 +707,8 @@ EOF if [ "$MPI" = 'yes' ] then - mpirun -np $proc $path_e/ww3_multi # > $path_o/ww3_multi.out + mpiexec_mpt -np $PBS_NP $path_e/ww3_multi # > $path_o/ww3_multi.out +# mpirun -np $proc $path_e/ww3_multi # > $path_o/ww3_multi.out # poe $path_e/ww3_multi # > $path_o/ww3_multi.out else $path_e/ww3_multi # > $path_o/ww3_multi.out @@ -847,7 +872,8 @@ EOF if [ "$MPI" = 'yes' ] then - mpirun -np $proc $path_e/ww3_shel > $path_o/ww3_shel.$mod.out + mpiexec_mpt -np $PBS_NP $path_e/ww3_shel > $path_o/ww3_shel.$mod.out +# mpirun -np $proc $path_e/ww3_shel > $path_o/ww3_shel.$mod.out # poe $path_e/ww3_shel > $path_o/ww3_shel.$mod.out else $path_e/ww3_shel > $path_o/ww3_shel.$mod.out diff -rupN WW3_314_10/test/mww3_test_05 WW3_314_11/test/mww3_test_05 --- WW3_314_10/test/mww3_test_05 2012-10-02 21:43:06.000000000 -0400 +++ WW3_314_11/test/mww3_test_05 2012-10-02 21:41:42.000000000 -0400 @@ -34,31 +34,45 @@ # environment with valiables MPI and proc in section 0. # # b) For IBM with poe, activale poe command lines and set environment # # variables in poe jobcards at the top of the scripts. # +# c) For SGI with MPIT several environment setting are needed in the # +# head of the script, as well as job cards and using the mpiexec_mpt # +# to start the code to run in the parallel environment. # +# d) In present form, IBM qsub directives disabled to avoid unwanted # +# translation by msub on zeus. # # # -# Hendrik Tolman, Nov 2005 # -# Last Mod : Nov 2007 # +# Hendrik Tolman, Jun 2002 # +# Last Mod : March 2012 # # # -# Copyright 2009 National Weather Service (NWS), # +# Copyright 2009-2012 National Weather Service (NWS), # # National Oceanic and Atmospheric Administration. All rights # # reserved. WAVEWATCH III is a trademark of the NWS. # # No unauthorized use without permission. # # # ############################################################################# -#@ shell=/bin/sh -#@ job_name=mww3_test_05 -#@ output=mww3_test_05.out -#@ error=mww3_test_05.out -#@ notification=never -#@ class=dev -#@ network.MPI=csss,shared,us -#@ total_tasks=16 -#@ node=1 -#@ job_type=parallel -#@ wall_clock_limit=00:30:00 -#@ resources=ConsumableCpus(1) ConsumableMemory(500 MB) -#@ account_no=WAV-T2O -#@ queue +# #@ shell=/bin/sh +# #@ job_name=mww3_test_05 +# #@ output=mww3_test_05.out +# #@ error=mww3_test_05.out +# #@ notification=never +# #@ class=dev +# #@ network.MPI=csss,shared,us +# #@ total_tasks=16 +# #@ node=1 +# #@ job_type=parallel +# #@ wall_clock_limit=00:30:00 +# #@ resources=ConsumableCpus(1) ConsumableMemory(500 MB) +# #@ account_no=WAV-T2O +# #@ queue + +#PBS -l procs=6 +# #PBS -l mem=1G +#PBS -q batch +#PBS -l walltime=05:00 +#PBS -A omd +#PBS -N mww3_test_05 +#PBS -j oe +#PBS -o mww3_test_05.out # 0. Preparations ----------------------------------------------------------- @@ -66,6 +80,10 @@ ww3_env='.wwatch3.env' # setup file +# f77=f77 +# f77=pgf90 + f77=ifort + input='input' grids='grd1 grd2 grd3' @@ -91,16 +109,16 @@ # t_end='19680606 000000' ; tn=' 1' # t_end='19680606 010000' ; tn=' 2' # t_end='19680606 030000' ; tn=' 4' -# t_end='19680606 060000' ; tn=' 7' + t_end='19680606 060000' ; tn=' 7' # t_end='19680606 120000' ; tn='13' # t_end='19680606 180000' ; tn='19' - t_end='19680607 000000' ; tn='25' +# t_end='19680607 000000' ; tn='25' # t_end='19680607 120000' ; tn='37' # t_end='19680608 000000' ; tn='49' # t_end='19680610 000000' ; tn='97' MPI='yes' # run ww3_shel and ww3_multi in MPI mode - proc=20 + proc=20 # used for mpirun only PRO2=' &PRO2 DTIME = 7200. /' PRO3='$ &PRO3 WDTHCG = 0., WDTHTH = 0. /' @@ -206,7 +224,13 @@ EOF path_e="$main_dir/exe" # path for executables path_a="$main_dir/aux" # path for aux files and scripts path_o="$main_dir/test" # path for output files -# path_o="$main_dir/work" + path_o="$main_dir/work" + +# zeus MPIT settings + + MPI_BUFS_PER_PROC=128 + MPI_BUFS_PER_HOST=128 + MPI_GROUP_MAX=128 # 0.b Clean-up @@ -299,7 +323,7 @@ cat > grid.f << EOF end EOF - f77 grid.f + $f77 grid.f rm -f grid.f @@ -438,7 +462,7 @@ c end EOF - f77 wind.f + $f77 wind.f rm -f wind.f @@ -594,7 +618,8 @@ EOF if [ "$MPI" = 'yes' ] then - mpirun -np $proc $path_e/ww3_multi # > $path_o/ww3_multi.out + mpiexec_mpt -np $PBS_NP $path_e/ww3_multi # > $path_o/ww3_multi.out +# mpirun -np $proc $path_e/ww3_multi # > $path_o/ww3_multi.out # poe $path_e/ww3_multi # > $path_o/ww3_multi.out else $path_e/ww3_multi # > $path_o/ww3_multi.out @@ -728,7 +753,8 @@ EOF if [ "$MPI" = 'yes' ] then - mpirun -np $proc $path_e/ww3_shel # > $path_o/ww3_shel.$mod.out + mpiexec_mpt -np $PBS_NP $path_e/ww3_shel # > $path_o/ww3_shel.$mod.out +# mpirun -np $proc $path_e/ww3_shel # > $path_o/ww3_shel.$mod.out # poe $path_e/ww3_shel # > $path_o/ww3_shel.$mod.out else $path_e/ww3_shel # > $path_o/ww3_shel.$mod.out