Changeset 102 for palm/trunk/SCRIPTS/mrun
- Timestamp:
- Jul 27, 2007 9:09:17 AM (17 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SCRIPTS/mrun
r97 r102 120 120 # removed (incl. option -f) 121 121 # 19/06/07 - Siggi - time limit for cdata jobs increased 122 # 25/07/07 - Siggi - two sets of executables can be started on lcmuk, 123 # if new option -Y (coupling) is given, 124 # output of executables to aout_output removed, 125 # messages are immediately written to stdout instead 122 126 123 127 … … 207 211 remotecall=false 208 212 remote_username="" 213 run_coupled_model=false 209 214 run_mode="" 210 215 scirocco=false … … 226 231 227 232 typeset -i iec=0 iic=0 iin=0 ioc=0 iout=0 memory=0 stagein_anz=0 stageout_anz=0 228 typeset -i cputime i ii i cycle inode ival jobges jobsek maxcycle minuten nodes pes sekunden tp1233 typeset -i cputime i ii iii icycle inode ival jobges jobsek maxcycle minuten nodes pes sekunden tp1 229 234 230 235 typeset -R30 calltime … … 344 349 # SHELLSCRIPT-OPTIONEN EINLESEN UND KOMMANDO NEU ZUSAMMENSETZEN, FALLS ES 345 350 # FUER FOLGEJOBS BENOETIGT WIRD 346 while getopts :a:AbBc:Cd:D:FG:h:H:i:IkK:m:M:n:o:Op:P:q:r:R:s:St:T:u:U:vxX: option351 while getopts :a:AbBc:Cd:D:FG:h:H:i:IkK:m:M:n:o:Op:P:q:r:R:s:St:T:u:U:vxX:Y option 347 352 do 348 353 case $option in … … 382 387 (x) do_trace=true;set -x; mc="$mc -x";; 383 388 (X) numprocs=$OPTARG; mc="$mc -X$OPTARG";; 389 (Y) run_coupled_model=true; mc="$mc -Y";; 384 390 (\?) printf "\n +++ unknown option $OPTARG \n" 385 391 printf "\n --> type \"$0 ?\" for available options \n" … … 436 442 printf "\n -x tracing of mrun for debug purposes ---" 437 443 printf "\n -X # of processors (on parallel machines) 1" 444 printf "\n -Y run coupled model ---" 438 445 printf "\n " 439 446 printf "\n Possible values of positional parameter <modus>:" … … 2618 2625 if [[ "$cond1" = hpmcount || "$cond2" = hpmcount ]] 2619 2626 then 2620 /opt/optibm/HPM_2_4_1/bin/hpmcount a.out $ROPTS > aout_output 2>&12627 /opt/optibm/HPM_2_4_1/bin/hpmcount a.out $ROPTS 2621 2628 else 2622 poe ./a.out $ROPTS > aout_output 2>&12629 poe ./a.out $ROPTS 2623 2630 fi 2624 2631 else 2625 2632 if [[ $localhost = ibmb || $localhost = ibmh || $localhost = ibms ]] 2626 2633 then 2627 poe a.out -procs $numprocs -nodes 1 -rmpool 0 $ROPTS > aout_output 2>&12634 poe a.out -procs $numprocs -nodes 1 -rmpool 0 $ROPTS 2628 2635 elif [[ $localhost = ibmy ]] 2629 2636 then … … 2640 2647 fi 2641 2648 export MP_HOSTFILE=hostfile 2642 ./a.out -procs $tasks_per_node $ROPTS > aout_output 2>&12649 ./a.out -procs $tasks_per_node $ROPTS 2643 2650 else 2644 2651 if [[ "$host_file" = "" ]] … … 2651 2658 fi 2652 2659 export MP_HOSTFILE=$host_file 2653 poe a.out -procs $numprocs -tasks_per_node $numprocs $ROPTS > aout_output 2>&12660 poe a.out -procs $numprocs -tasks_per_node $numprocs $ROPTS 2654 2661 fi 2655 2662 fi … … 2663 2670 # export F_TRACE=YES|FMT1|FMT2 # output of ftrace informations to job protocol 2664 2671 echo "*** execution on single node with mpirun" 2665 mpirun -np $numprocs ./a.out $ROPTS > aout_output 2>&12672 mpirun -np $numprocs ./a.out $ROPTS 2666 2673 else 2667 2674 (( i = 0 )) … … 2699 2706 echo "export use_seperate_pe_for_dvrp_output" >> mpi_exec_shell 2700 2707 echo " " >> mpi_exec_shell 2701 echo "exec ./a.out > aout_output 2>&1">> mpi_exec_shell2708 echo "exec ./a.out" >> mpi_exec_shell 2702 2709 2703 2710 chmod u+x mpi_exec_shell … … 2731 2738 printf "\n threads per task: $threads_per_task" 2732 2739 fi 2733 printf "\n\n"2734 if [[ $scirocco = true ]]2735 then2736 mpiexec -machinefile hostfile -n $ii a.out $ROPTS > aout_output 2>&12740 if [[ $run_coupled_model = false ]] 2741 then 2742 printf "\n\n" 2743 mpiexec -machinefile hostfile -n $ii a.out $ROPTS 2737 2744 else 2738 mpirun -machinefile hostfile -np $ii a.out $ROPTS > aout_output 2>&1 2739 fi 2745 (( iii = ii / 2 )) 2746 printf "\n coupled run ($iii atmosphere, $iii ocean)" 2747 printf "\n\n" 2748 mpiexec -machinefile hostfile -n $iii -env coupling_mode atmosphere_to_ocean a.out $ROPTS & 2749 mpiexec -machinefile hostfile -n $iii -env coupling_mode ocean_to_atmosphere a.out $ROPTS & 2750 wait 2751 fi 2752 2753 # if [[ $scirocco = true ]] 2754 # then 2755 # mpiexec -machinefile hostfile -n $ii a.out $ROPTS 2756 # else 2757 # mpirun -machinefile hostfile -np $ii a.out $ROPTS 2758 # fi 2759 2740 2760 elif [[ $host = decalpha ]] 2741 2761 then 2742 dmpirun -np $numprocs a.out $ROPTS > aout_output 2>&12762 dmpirun -np $numprocs a.out $ROPTS 2743 2763 elif [[ $host = lctit ]] 2744 2764 then … … 2760 2780 if [[ "$QUEUE" = interactive ]] 2761 2781 then 2762 mpirun -np $numprocs a.out $ROPTS > aout_output 2>&12782 mpirun -np $numprocs a.out $ROPTS 2763 2783 else 2764 n1ge -fore -g 1S060156 -mpi $numprocs -mem 4 -N palm -q $queue a.out $ROPTS > aout_output 2>&12784 n1ge -fore -g 1S060156 -mpi $numprocs -mem 4 -N palm -q $queue a.out $ROPTS 2765 2785 fi 2766 2786 2767 2787 rm $runfile 2768 2788 else 2769 mpprun -n $numprocs a.out $ROPTS > aout_output 2>&12789 mpprun -n $numprocs a.out $ROPTS 2770 2790 fi 2771 2791 [[ $? != 0 ]] && execution_error=true … … 2778 2798 fi 2779 2799 else 2780 a.out $ROPTS > aout_output 2>&12800 a.out $ROPTS 2781 2801 fi 2782 2802 fi … … 2785 2805 2786 2806 # ABBRUCH BEI LAUFZEITFEHLER 2787 [[ ! ( "$cond1" = debug || "$cond2" = debug ) ]] && cat aout_output 2807 # [[ ! ( "$cond1" = debug || "$cond2" = debug ) ]] && cat aout_output* 2788 2808 printf "\n +++ runtime error occured" 2789 2809 locat=execution 2790 2810 exit 2791 2811 else 2792 [[ ! ( "$cond1" = debug || "$cond2" = debug ) ]] && cat aout_output 2812 # [[ ! ( "$cond1" = debug || "$cond2" = debug ) ]] && cat aout_output* 2793 2813 printf "\n$striche\n *** execution finished \n" 2794 2814 fi … … 3544 3564 [[ $delete_temporary_catalog = false ]] && mrun_com=${mrun_com}" -B" 3545 3565 [[ $node_usage != default ]] && mrun_com=${mrun_com}" -n $node_usage" 3566 [[ $run_coupled_model = true ]] && mrun_com=${mrun_com}" -Y" 3546 3567 if [[ $do_remote = true ]] 3547 3568 then
Note: See TracChangeset
for help on using the changeset viewer.