Ignore:
Timestamp:
May 15, 2008 8:46:15 AM (16 years ago)
Author:
raasch
Message:

optimization of transpositions for 2D decompositions, workaround for using -env option with mpiexec, adjustments for lcxt4

File:
1 edited

Legend:

Unmodified
Added
Removed
  • palm/trunk/SCRIPTS/mrun

    r149 r164  
    140140     #                     true, mrun tries "ln -f" on local output and resorts
    141141     #                     to "cp" or "cp -r" on error
     142     # 15/04/08 - Siggi  - argument -c introduced to most of the subjob calls,
     143     #                     which allows the user to choose his own job catalog
     144     #                     by setting job_catalog in the configuration file
     145     #                     (default is ~/job_queue),
     146     #                     workaround for mpixec with -env option,
     147     #                     adjustments for lcxt4 (Bergen Center for Computational
     148     #                     Science)
    142149 
    143150    # VARIABLENVEREINBARUNGEN + DEFAULTWERTE
     
    183190 input_list=""
    184191 interpreted_config_file=""
     192 job_catalog="~/job_queue"
    185193 job_on_file=""
    186194 keep_data_from_previous_run=false
     
    18171825 lopts="$lopts $netcdf_lib $dvrp_lib"
    18181826 ROPTS="$ropts"
    1819  if [[ ( $(echo $host | cut -c1-3) = nec  ||  $(echo $host | cut -c1-3) = ibm  ||  $host = lctit  ||  $host = lcfimm )  &&  -n $numprocs ]]
     1827 if [[ ( $(echo $host | cut -c1-3) = nec  ||  $(echo $host | cut -c1-3) = ibm  ||  $host = lctit  ||  $host = lcfimm  ||  $host = lcxt4 )  &&  -n $numprocs ]]
    18201828 then
    18211829    XOPT="-X $numprocs"
     
    27682776             then
    27692777                printf "\n\n"
    2770                 mpiexec  -machinefile hostfile  -n $ii  a.out  $ROPTS
     2778                if [[ $host = lcxt4 ]]
     2779                then
     2780                   aprun  -n $ii  -N $tasks_per_node  a.out  $ROPTS
     2781                else
     2782                   mpiexec  -machinefile hostfile  -n $ii  a.out  $ROPTS
     2783                fi
    27712784             else
    27722785                ((  iii = ii / 2 ))
     2786                echo "atmosphere_to_ocean"  >  runfile_atmos
     2787                echo "ocean_to_atmosphere"  >  runfile_ocean
     2788
    27732789                printf "\n      coupled run ($iii atmosphere, $iii ocean)"
    27742790                printf "\n\n"
    2775                 mpiexec  -machinefile hostfile  -n $iii  -env coupling_mode atmosphere_to_ocean  a.out  $ROPTS  &
    2776                 mpiexec  -machinefile hostfile  -n $iii  -env coupling_mode ocean_to_atmosphere  a.out  $ROPTS  &
     2791
     2792                if [[ $host == lcxt4 ]]
     2793                then
     2794                   aprun  -n $iii  -N $tasks_per_node  a.out < runfile_atmos  $ROPTS  &
     2795                   aprun  -n $iii  -N $tasks_per_node  a.out < runfile_ocean  $ROPTS  &
     2796                else
     2797
     2798                      # WORKAROUND BECAUSE mpiexec WITH -env option IS NOT AVAILABLE ON SOME SYSTEMS
     2799                   mpiexec  -machinefile hostfile  -n $iii  a.out  $ROPTS  <  runfile_atmos &
     2800                   mpiexec  -machinefile hostfile  -n $iii  a.out  $ROPTS  <  runfile_ocean &
     2801#                   mpiexec  -machinefile hostfile  -n $iii  -env coupling_mode atmosphere_to_ocean  a.out  $ROPTS  &
     2802#                   mpiexec  -machinefile hostfile  -n $iii  -env coupling_mode ocean_to_atmosphere  a.out  $ROPTS  &
     2803                fi
    27772804                wait
    27782805             fi
     
    29702997                      if [[ "$LOGNAME" = b323013 ]]
    29712998                      then
    2972                          subjob  -v  -q c1  -X 0  -m 1000  -t 900  transfer_${localout[$i]}
     2999                         subjob  -v  -q c1  -X 0  -m 1000  -t 900  -c $job_catalog  transfer_${localout[$i]}
    29733000                      else
    2974                          subjob  -d  -v  -q c1  -X 0  -m 1000  -t 900  transfer_${localout[$i]}
     3001                         subjob  -d  -v  -q c1  -X 0  -m 1000  -t 900  -c $job_catalog  transfer_${localout[$i]}
    29753002                      fi
    29763003                   fi
     
    30453072                      if [[ $LOGNAME = b323013 ]]
    30463073                      then
    3047                          subjob  -v  -q c1  -X 0  -m 1000  -t 900  transfer_${localout[$i]}
     3074                         subjob  -v  -q c1  -X 0  -m 1000  -t 900  -c $job_catalog  transfer_${localout[$i]}
    30483075                      else
    3049                          subjob  -d  -v  -q c1  -X 0  -m 1000  -t 900  transfer_${localout[$i]}
     3076                         subjob  -d  -v  -q c1  -X 0  -m 1000  -t 900  -c $job_catalog  transfer_${localout[$i]}
    30503077                      fi
    30513078                   fi
     
    32323259                   if [[ $localhost = ibmh  ||  $localhost = ibmb ]]
    32333260                   then
    3234 #                      subjob  -d  -v  -q cdata  -X 0  -m 1000  -t 43200  archive_${frelout[$i]}
    3235                       subjob   -v  -q cdata  -X 0  -m 1000  -t 43200  archive_${frelout[$i]}
     3261#                      subjob  -d  -v  -q cdata  -X 0  -m 1000  -t 43200  -c $job_catalog  archive_${frelout[$i]}
     3262                      subjob   -v  -q cdata  -X 0  -m 1000  -t 43200  -c $job_catalog  archive_${frelout[$i]}
    32363263                   elif [[ $localhost = nech ]]
    32373264                   then
     
    33573384                fi
    33583385
    3359                 subjob  -v  -d  -q cdata  -X 0  -m 1000  -t 43200  archive_${frelout[$i]}
     3386                subjob  -v  -d  -q cdata  -X 0  -m 1000  -t 43200  -c $job_catalog  archive_${frelout[$i]}
    33603387                printf "              Archiving of $tmp_data_catalog/${frelout[$i]} initiated (batch job submitted)\n"
    33613388                file_saved=true
     
    38003827    fi
    38013828
    3802     subjob  $job_on_file  -h $host  -u $remote_username -g $group_number -q $queue  -m $memory  -N $node_usage -t $cpumax  $XOPT  $TOPT  $OOPT  -n $fname  -v  $jobfile
     3829    subjob  $job_on_file  -h $host  -u $remote_username -g $group_number -q $queue  -m $memory  -N $node_usage -t $cpumax  $XOPT  $TOPT  $OOPT  -n $fname  -v  -c $job_catalog $jobfile
    38033830    rm -rf  $jobfile
    38043831
Note: See TracChangeset for help on using the changeset viewer.