Changeset 493 for palm/trunk/SCRIPTS


Ignore:
Timestamp:
Mar 1, 2010 8:30:24 AM (14 years ago)
Author:
raasch
Message:

New:
---
Output in NetCDF4-format. New d3par-parameter netcdf_data_format.

(check_open, check_parameters, close_file, data_output_2d, data_output_3d, header, modules, netcdf, parin)

Modules to be loaded for compilation (mbuild) or job execution (mrun)
can be given in the configuration file using variable modules. Example:

%modules ifort/11.0.069:netcdf lcsgih parallel

This method replaces the (undocumented) mpilib-variable.

WARNING: All fixed settings of modules in the scripts mbuild, mrun, and subjob
have been removed! Please set the modules variable appropriately in your
configuration file. (mbuild, mrun, subjob)

Changed:


Parameters netcdf_64bit and netcdf_64bit_3d have been removed. Use
netcdf_data_format = 2 for choosing the classic 64bit-offset format (this is
the default). The offset-format can not be set independently for the
3d-output-data any more.

Parameters netcdf_format_mask, netcdf_format_mask_av, and variables
nc_format_mask, format_parallel_io removed. They are replaced by the new
parameter netcdf_data_format. (check_open, close_file,
data_output_mask, header, init_masks, modules, parin)

Errors:


bugfix in trunk/UTIL/Makefile: forgot to compile for interpret_config

Bugfix: timeseries data have to be collected by PE0 (user_statistics)

Location:
palm/trunk/SCRIPTS
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SCRIPTS/mbuild

    r492 r493  
    113113     #                    removed, t3e related parts removed
    114114     # 26/02/10 - BjornM- re-adjustments for lcxt4 (new modules)
     115     # 01/03/10 - Siggi - mpilib replaced by modules: explicit module settings
     116     #                    removed; modules should now be given in the
     117     #                    configuration file
    115118
    116119
     
    124127 locat=normal
    125128 makefile=""
     129 module_calls=""
    126130 scirocco=false
    127131 silent=false
     
    460464    fi
    461465
     466    modules=""
    462467    netcdf_inc=""
    463468    netcdf_lib=""
     
    798803
    799804
    800        # MPI LIBRARY ERMITTELN
     805       # get modules to be load
    801806    line=""
    802     found=false
    803     grep  "$remote_host_string" $config_file | grep "%mpilib"  >  $tmp_mbuild
     807    grep  "$remote_host_string" $config_file | grep "%modules"  >  $tmp_mbuild
    804808    while read line1
    805809    do
     
    813817       then
    814818             # EVENTUELLE DOPPELPUNKTE AUS DIREKTIVENSTRING ENTFERNEN
    815           mpilib=`echo $line | cut -d" " -s -f2`
    816           found=true
     819          modules=`echo $line | cut -d" " -s -f2 | sed 's/::/%DUM%/g' | sed 's/:/ /g' | sed 's/%DUM%/:/g'`
    817820       fi
    818821
    819822    done < $tmp_mbuild
    820 
    821     [[ $found = false ]]  &&  mpilib=mpt
    822823
    823824
     
    918919       line=$(echo "$line" | cut -c51-)
    919920    done
    920     if [[ $( echo $remote_host | cut -c1-5 ) = lcsgi ]]
    921     then
    922        column1="mpi library:"; column2=$mpilib
    923        printf "| $column1$column2 | \n"
    924     fi
    925921    column1="loader options:"; column2=$loader_options
    926922    printf "| $column1$column2 | \n"
     
    933929       line=$(echo "$line" | cut -c51-)
    934930    done
     931    if [[ $modules != "" ]]
     932    then
     933       column1="modules to be load:"; column2=$modules
     934       printf "| $column1$column2 | \n"
     935       line=$(echo "$modules" | cut -c51-)
     936       while [[ "$line" != "" ]]
     937       do
     938          column1=""
     939          column2=$line
     940          printf "| $column1$column2 | \n"
     941          line=$(echo "$line" | cut -c51-)
     942       done
     943    fi
    935944    printf "#------------------------------------------------------------------------# \n"
    936945
     
    10201029          echo "  *** execute \"make\" on remote host"
    10211030
     1031
     1032             # generate make call with make options
    10221033          if [[ $remote_host = nech ]]
    10231034          then
     
    10271038          fi
    10281039
     1040             # generate command to load modules, if modules are given
     1041          if [[ "$modules" != "" ]]
     1042          then
     1043             module_calls="module load ${modules};"
     1044          fi
     1045
    10291046          if [[ $remote_host = ibms  ||  $remote_host = ibmy ]]
    10301047          then
    10311048
    1032              ssh  ${remote_username}@${remote_addres}  "cd ${remote_md}; echo '$make_call_string' > LAST_MAKE_CALL; chmod u+x LAST_MAKE_CALL; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" 2>&1 | tee ${remote_host}_last_make_protokoll
     1049             ssh  ${remote_username}@${remote_addres}  "$module_calls cd ${remote_md}; echo '$make_call_string' > LAST_MAKE_CALL; chmod u+x LAST_MAKE_CALL; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" 2>&1 | tee ${remote_host}_last_make_protokoll
    10331050
    10341051          elif [[ $remote_host = ibmh ]]
    10351052          then
    10361053
    1037              print "export OBJECT_MODE=64; cd ${remote_md}; echo $make_call_string > LAST_MAKE_CALL; chmod u+x LAST_MAKE_CALL; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
     1054             print "$module_calls export OBJECT_MODE=64; cd ${remote_md}; echo $make_call_string > LAST_MAKE_CALL; chmod u+x LAST_MAKE_CALL; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
    10381055
    10391056          elif [[ $remote_host = lcsgib  ||  $remote_host = lcsgih ]]
    10401057          then
    10411058
    1042              print ". /usr/share/modules/init/bash; module load ifort/11.0.069; module load $mpilib; cd ${remote_md}; echo $make_call_string > LAST_MAKE_CALL; chmod u+x LAST_MAKE_CALL; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
    1043 #             print ". /usr/share/modules/init/bash; module load mvapich2/1.2rc1-intel; cd ${remote_md}; echo $make_call_string > LAST_MAKE_CALL; chmod u+x LAST_MAKE_CALL; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
    1044 #             print ". /usr/share/modules/init/bash; module load mvapich2; cd ${remote_md}; echo $make_call_string > LAST_MAKE_CALL; chmod u+x LAST_MAKE_CALL; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
     1059             print ". /usr/share/modules/init/bash; $module_calls  cd ${remote_md}; echo $make_call_string > LAST_MAKE_CALL; chmod u+x LAST_MAKE_CALL; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
    10451060
    10461061          elif [[ $remote_host = lctit ]]
     
    10561071          then
    10571072
    1058              print ". /opt/modules/default/init/ksh; module load Base-opts; module load modules; module load pmi; module load pgi; module load PrgEnv-pgi; cd ${remote_md}; echo $make_call_string > LAST_MAKE_CALL; chmod u+x LAST_MAKE_CALL; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
     1073             print ". /opt/modules/default/init/ksh; $module_calls cd ${remote_md}; echo $make_call_string > LAST_MAKE_CALL; chmod u+x LAST_MAKE_CALL; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
    10591074
    10601075          else
    10611076
    1062              print "cd ${remote_md}; echo $make_call_string > LAST_MAKE_CALL; chmod u+x LAST_MAKE_CALL; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
     1077             print "cd $module_calls ${remote_md}; echo $make_call_string > LAST_MAKE_CALL; chmod u+x LAST_MAKE_CALL; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
    10631078
    10641079          fi
     
    11711186          fi
    11721187
     1188             # generate command to load modules, if modules are given
     1189          if [[ "$modules" != "" ]]
     1190          then
     1191             module_calls="module load ${modules};"
     1192          fi
     1193
    11731194          if [[ $remote_host = ibms  ||  $remote_host = ibmy ]]
    11741195          then
    11751196
    1176              ssh  ${remote_username}@${remote_addres}  "cd ${remote_ud}; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR"
     1197             ssh  ${remote_username}@${remote_addres}  "$module_calls cd ${remote_ud}; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR"
    11771198
    11781199          elif [[ $remote_host = ibmh ]]
    11791200          then
    11801201
    1181              print "export OBJECT_MODE=64; cd ${remote_ud}; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres}
     1202             print "$module_calls export OBJECT_MODE=64; cd ${remote_ud}; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres}
    11821203
    11831204          elif [[ $remote_host = lctit ]]
     
    11871208             while [[ $(cat ${remote_host}_last_make_protokoll | grep -c "Forwarding to N1GE") = 0 ]]
    11881209             do
    1189                 print "cd ${remote_ud}; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
     1210                print "$module_calls cd ${remote_ud}; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
    11901211             done
    11911212
     
    11931214          then
    11941215
    1195              print ". /opt/modules/default/init/ksh; module load Base-opts; module load modules; module load pmi; module load pgi; module load PrgEnv-pgi; cd ${remote_ud}; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
     1216             print ". /opt/modules/default/init/ksh; $module_calls cd ${remote_ud}; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
    11961217
    11971218          else
    11981219
    1199              print "cd ${remote_ud}; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
     1220             print "$module_calls cd ${remote_ud}; $make_call_string; [[ \$? != 0 ]] && echo MAKE_ERROR" | ssh  ${remote_username}@${remote_addres} 2>&1 | tee ${remote_host}_last_make_protokoll
    12001221
    12011222          fi
     
    12381259          echo " "
    12391260          echo "  *** execute \"make\" on local host"
     1261
     1262             # first load modules, if given
     1263          if [[ "$modules" != "" ]]
     1264          then
     1265             module load ${modules}
     1266          fi
    12401267
    12411268          make  $make_options  PROG=$mainprog  F90=$compiler_name  COPT="$cpp_options"  F90FLAGS="$compiler_options"  LDFLAGS="$loader_options"  2>&1 | tee ${remote_host}_last_make_protokoll
  • palm/trunk/SCRIPTS/mrun

    r475 r493  
    198198     # 03/02/10 - Siggi  - make options (mopts) to be set by configuration file
    199199     #                     implemented
     200     # 08/02/10 - Siggi  - loading of modules now controlled via configuration
     201     #                     file (modules)
    200202
    201203
     
    261263    mc=`echo $mc | cut -f2- -d"/"`
    262264 done
    263  module_files=""
     265 module_calls=""
    264266 mrun_script_name=$mc
    265267 netcdf_inc=""
     
    20722074
    20732075
     2076    # set module load command and export for subjob
     2077 if [[ "$modules" != "" ]]
     2078 then
     2079    export module_calls="module load ${modules};"
     2080 fi
     2081
     2082
    20742083    # SET DEFAULT VALUE FOR MPI MODULE TO BE USED ON SGI-ALTIX
    20752084 if [[ $host = lcsgib  ||  $host = lcsgih ]]
    20762085 then
    2077     [[ "$mpilib" = "" ]]  &&  export mpilib=mpt
     2086    if [[ $(echo $modules | grep -c mpt ) != 0 ]]
     2087    then
     2088       mpilib=mpt
     2089    elif [[ $(echo $modules | grep -c mvapich ) != 0 ]]
     2090    then
     2091       mpilib=mvapich
     2092    fi
    20782093 fi
    20792094
     
    21252140    if [[ "$mopts" != "" ]]
    21262141    then
    2127        spalte1=make-options:; spalte2=$mopts
     2142       spalte1="make options:"; spalte2=$mopts
    21282143       printf "| $spalte1$spalte2 | \n"
    21292144       zeile=$(echo "$mopts" | cut -c41-)
     
    21372152    fi
    21382153
    2139     spalte1=cpp-directives:; spalte2=$cpp_options
     2154    spalte1="cpp directives:"; spalte2=$cpp_options
    21402155    printf "| $spalte1$spalte2 | \n"
    21412156    zeile=$(echo "$cpp_options" | cut -c41-)
     
    21482163    done
    21492164
    2150     spalte1=compiler-options:; spalte2="$fopts"
     2165    spalte1="compiler options:"; spalte2="$fopts"
    21512166    printf "| $spalte1$spalte2 | \n"
    21522167    zeile=$(echo "$fopts" | cut -c41-)
     
    21592174    done
    21602175
    2161     spalte1=linker-options:; spalte2=$lopts
     2176    spalte1="linker options:"; spalte2=$lopts
    21622177    printf "| $spalte1$spalte2 | \n"
    21632178    zeile=$(echo "$lopts" | cut -c41-)
     2179    while [[ "$zeile" != "" ]]
     2180    do
     2181       spalte1=""
     2182       spalte2=$zeile
     2183       printf "| $spalte1$spalte2 | \n"
     2184       zeile=$(echo "$zeile" | cut -c41-)
     2185    done
     2186
     2187    spalte1="modules to be load:"; spalte2=$modules
     2188    printf "| $spalte1$spalte2 | \n"
     2189    zeile=$(echo "$modules" | cut -c41-)
    21642190    while [[ "$zeile" != "" ]]
    21652191    do
     
    23002326    tmpcreate=true
    23012327
     2328       # set striping on lustre file system
     2329#    if [[ $localhost = lcsgih ]]
     2330#    then
     2331#       lfs setstripe -s 8192k -c 16  $TEMPDIR
     2332#       lfs getstripe $TEMPDIR
     2333#    fi
     2334
    23022335
    23032336       # SAEMTLICHE QUELLTEXT-DATEIEN BZW. AUSFUEHRBARES PROGRAMM IN
     
    24302463       printf "      compilername:             $compiler_name\n"
    24312464       printf "      compiler options:         $fopts\n"
    2432        printf "      preprocessor-directives:  $cpp_options \n"
    2433        printf "      linker-options:           $lopts \n"
     2465       printf "      preprocessor directives:  $cpp_options \n"
     2466       printf "      linker options:           $lopts \n"
     2467       if [[ "$modules" != "" ]]
     2468       then
     2469          printf "      modules to be load:       $modules \n"
     2470       fi
    24342471       printf "      source code files:        $source_list \n"
    24352472
    24362473       if [[ $localhost = nech ]]
    24372474       then
    2438           ssh  136.172.44.192 -l $usern ". /SX/opt/etc/initsx.sh; cd \$HOME/work/${usern}.$kennung; sxmake $mopts -f Makefile PROG=a.out  F90=$compiler_name  COPT=\"$cpp_options\"  F90FLAGS=\"$fopts\"  LDFLAGS=\"$lopts\" "
     2475          ssh  136.172.44.192 -l $usern ". /SX/opt/etc/initsx.sh; $module_calls cd \$HOME/work/${usern}.$kennung; sxmake $mopts -f Makefile PROG=a.out  F90=$compiler_name  COPT=\"$cpp_options\"  F90FLAGS=\"$fopts\"  LDFLAGS=\"$lopts\" "
    24392476          cp  $TEMPDIR_COMPILE/a.out  .
    24402477          [[ $? != 0 ]]  &&  compile_error=true
     
    24432480       then
    24442481          printf "      compiler is called via ssh on \"plogin1\" \n"
    2445           ssh  plogin1  -l $usern  "export PATH=/sw/ibm/xlf/12.1.0.3/usr/bin:$PATH; cd $TEMPDIR; make $mopts -f Makefile PROG=a.out  F90=$compiler_name  COPT=\"$cpp_options\"  F90FLAGS=\"$fopts\"  LDFLAGS=\"$lopts\" "
     2482          ssh  plogin1  -l $usern  "export PATH=/sw/ibm/xlf/12.1.0.3/usr/bin:$PATH; $module_calls cd $TEMPDIR; make $mopts -f Makefile PROG=a.out  F90=$compiler_name  COPT=\"$cpp_options\"  F90FLAGS=\"$fopts\"  LDFLAGS=\"$lopts\" "
    24462483          [[ ! -f a.out ]]  &&  compile_error=true
    24472484          continue   # ANDERENFALLS IST STATUS=1, FALLS A.OUT VORHANDEN
    24482485       elif [[ $localhost = lcsgib ]]
    24492486       then
    2450           printf "      compiler is called via ssh on \"bicegate\" using module \"$mpilib\" \n"
    2451           ssh  130.73.232.103  -l $usern  ". /usr/share/modules/init/bash; module load ifort/11.0.069; module load $mpilib; cd $TEMPDIR; make $mopts -f Makefile PROG=a.out  F90=$compiler_name  COPT=\"$cpp_options\"  F90FLAGS=\"$fopts\"  LDFLAGS=\"$lopts\" "
     2487          printf "      compiler is called via ssh on \"bicegate\" \n"
     2488          ssh  130.73.232.103  -l $usern  ". /usr/share/modules/init/bash; $module_calls cd $TEMPDIR; make $mopts -f Makefile PROG=a.out  F90=$compiler_name  COPT=\"$cpp_options\"  F90FLAGS=\"$fopts\"  LDFLAGS=\"$lopts\" "
    24522489          [[ ! -f a.out ]]  &&  compile_error=true
    24532490          continue   # ANDERENFALLS IST STATUS=1, FALLS A.OUT VORHANDEN
    24542491       elif [[ $localhost = lcsgih ]]
    24552492       then
    2456           printf "      compiler is called via ssh on \"hicegate2\" using module \"$mpilib\" \n"
    2457           ssh  130.75.4.103    -l $usern  ". /usr/share/modules/init/bash; module load ifort/11.0.069; module load $mpilib; cd $TEMPDIR; make $mopts -f Makefile PROG=a.out  F90=$compiler_name  COPT=\"$cpp_options\"  F90FLAGS=\"$fopts\"  LDFLAGS=\"$lopts\" 2>&1 "
     2493          printf "      compiler is called via ssh on \"hicegate2\" \n"
     2494          ssh  130.75.4.103    -l $usern  ". /usr/share/modules/init/bash; $module_calls cd $TEMPDIR; make $mopts -f Makefile PROG=a.out  F90=$compiler_name  COPT=\"$cpp_options\"  F90FLAGS=\"$fopts\"  LDFLAGS=\"$lopts\" 2>&1 "
    24582495          [[ ! -f a.out ]]  &&  compile_error=true
    24592496          continue   # ANDERENFALLS IST STATUS=1, FALLS A.OUT VORHANDEN
    24602497       else
    24612498          [[ $localhost = lctit ]]  &&  export LM_LICENSE_FILE=27050@tggls
     2499          [[ "$module_calls" != "" ]]  &&  eval $module_calls
    24622500          make $mopts -f Makefile PROG=a.out  F90=$compiler_name  COPT="$cpp_options"  F90FLAGS="$fopts"  LDFLAGS="$lopts"
    24632501       fi
  • palm/trunk/SCRIPTS/subjob

    r492 r493  
    115115     # 26/02/10 - BjornM- re-adjustments for lcxt4 (new modules, email
    116116     #                    notification)
     117     # 01/03/10 - Siggi - loading of modules controlled by environment variable
     118     #                    module_calls
     119
    117120
    118121
     
    815818
    816819. /usr/share/modules/init/bash
    817 module load ifort/11.0.069
    818 module load $mpilib
    819 module load netcdf
     820$module_calls
    820821
    821822echo ld_library_path=\$LD_LIBRARY_PATH
     
    835836
    836837. /usr/share/modules/init/bash
    837 module load ifort/11.0.069
    838 module load netcdf
     838$module_calls
    839839
    840840%%END%%
     
    861861
    862862. /opt/modules/default/init/ksh
    863 module load modules
    864 module load PrgEnv-pgi
    865 module load Base-opts
    866 module load moab
    867 module load torque
    868 module load pmi
     863$module_calls
    869864
    870865%%END%%
     
    885880
    886881. /opt/modules/default/init/ksh
    887 module load modules
    888 module load PrgEnv-pgi
    889 module load Base-opts
    890 module load moab
    891 module load torque
    892 module load pmi
     882$module_calls
    893883
    894884%%END%%
     
    938928
    939929. /opt/modules/default/init/ksh
    940 module load modules/3.1.6
    941 module load netcdf/3.6.2
    942 module load PrgEnv-pgi/2.2.41
    943 module load Base-opts/2.2.41
     930$module_calls
    944931
    945932%%END%%
     
    958945
    959946. /opt/modules/default/init/ksh
    960 module load modules/3.1.6
    961 module load netcdf/3.6.2
    962 module load PrgEnv-pgi/2.2.41
    963 module load Base-opts/2.2.41
     947$module_calls
    964948
    965949%%END%%
Note: See TracChangeset for help on using the changeset viewer.