Changeset 260
- Timestamp:
- Mar 16, 2009 11:57:58 AM (16 years ago)
- Location:
- palm/trunk
- Files:
-
- 2 added
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
palm/trunk/SCRIPTS/.mrun.config.default
r255 r260 31 31 %compiler_name mpif90 <hi> parallel 32 32 %compiler_name_ser ifort <hi> parallel 33 %cpp_options -D__mpi2:-DMPI_REAL=MPI_DOUBLE_PRECISION:-DMPI_2REAL=MPI_2DOUBLE_PRECISION:-D__netcdf:-D__netcdf_64bit :-D__intel_openmp_bug<hi> parallel33 %cpp_options -D__mpi2:-DMPI_REAL=MPI_DOUBLE_PRECISION:-DMPI_2REAL=MPI_2DOUBLE_PRECISION:-D__netcdf:-D__netcdf_64bit <hi> parallel 34 34 %netcdf_inc -I:<replace by netcdf include path> <hi> parallel 35 35 %netcdf_lib -L<replace by netcdf library path>:-lnetcdf <hi> parallel 36 %fopts -axW:-cpp:- openmp:-r8:-nbs:-convert:little_endian:-I:<replace by mpi include path> <hi> parallel37 %lopts -axW:-cpp:- openmp:-r8:-nbs:-Vaxlib:-L:<replace by mpi library path> <hi> parallel36 %fopts -axW:-cpp:-r8:-nbs:-convert:little_endian:-I:<replace by mpi include path> <hi> parallel 37 %lopts -axW:-cpp:-r8:-nbs:-Vaxlib:-L:<replace by mpi library path> <hi> parallel 38 38 # if you want to use your own hostfile, uncomment next line 39 39 #%hostfile $base_directory/.hostfile <hi> parallel -
palm/trunk/SCRIPTS/mrun
r253 r260 171 171 # interactive runs 172 172 # 05/03/09 - Siggi - adjustments for new NEC-SX9 at RIAM (necriam) 173 # 16/03/09 - Siggi - dvrp_lib, dvrp_inc replaced by dvr_lib, dvr_inc, 174 # dvr streaming server is automatically started using 175 # new variable dvr_server and a configuration file 176 # .dvrserver.config, 177 # processing of dvr output files implemented, in order 178 # to make dvr application more user friendly 173 179 174 180 … … 225 231 localhost_realname=$(hostname) 226 232 local_compile=false 233 local_dvrserver_running=.FALSE. 227 234 locat=normal 228 235 mainprog="" … … 360 367 [[ $delete_temporary_catalog = true ]] && rm -rf $TEMPDIR 361 368 fi 369 if [[ "$dvrserver_id" != "" ]] 370 then 371 echo "+++ killing dvrserver_id=$dvrserver_id" 372 kill $dvrserver_id 373 fi 362 374 if [[ -f ~/job_queue/JOBINFO.$QSUB_REQID ]] 363 375 then … … 378 390 then 379 391 rm -rf ~/job_queue/JOBINFO.$QSUB_REQID 392 fi 393 if [[ "$dvrserver_id" != "" ]] 394 then 395 echo "+++ killing dvrserver_id=$dvrserver_id" 396 kill $dvrserver_id 380 397 fi 381 398 printf "\n+++ MRUN killed by \"^C\" \n\n" … … 1320 1337 if [[ ! ( $fromhost != $localhost && ( "${actionout[$i]}" = tr || "${actionout[$i]}" = tra || "${actionout[$i]}" = trpe ) ) ]] 1321 1338 then 1322 if [[ "${actionout[$i]}" = tr || "${actionout[$i]}" = trpe]]1339 if [[ "${actionout[$i]}" = tr ]] 1323 1340 then 1324 1341 actionout[$i]="" 1342 elif [[ "${actionout[$i]}" = trpe ]] 1343 then 1344 actionout[$i]=pe 1325 1345 elif [[ "${actionout[$i]}" = tra ]] 1326 1346 then … … 1429 1449 1430 1450 1431 # DAS DVR P-PAKET ERFORDERT EINE ENTSPRECHENDE BIBLIOTHEK1451 # DAS DVR-PAKET ERFORDERT EINE ENTSPRECHENDE BIBLIOTHEK 1432 1452 if [[ $(echo $package_list | grep -c dvrp_graphics) != 0 ]] 1433 1453 then 1434 if [[ "$dvr p_inc" = "" ]]1435 then 1436 printf "\n\n +++ no value for \"dvr p_inc\" given in configuration file"1454 if [[ "$dvr_inc" = "" ]] 1455 then 1456 printf "\n\n +++ no value for \"dvr_inc\" given in configuration file" 1437 1457 printf "\n This is required for the dvrp_graphics package.\n" 1438 locat=dvr p; exit1439 fi 1440 if [[ "$dvr p_lib" = "" ]]1441 then 1442 printf "\n\n +++ no value for \"dvr p_lib\" given in configuration file"1458 locat=dvr; exit 1459 fi 1460 if [[ "$dvr_lib" = "" ]] 1461 then 1462 printf "\n\n +++ no value for \"dvr_lib\" given in configuration file" 1443 1463 printf "\n This is required for the dvrp_graphics package.\n" 1444 locat=dvr p; exit1464 locat=dvr; exit 1445 1465 fi 1446 1466 fi … … 1953 1973 1954 1974 # COMPILE- UND LINK-OPTIONEN BESTIMMEN 1955 fopts="$fopts $netcdf_inc $dvr p_inc"1956 lopts="$lopts $netcdf_lib $dvr p_lib"1975 fopts="$fopts $netcdf_inc $dvr_inc" 1976 lopts="$lopts $netcdf_lib $dvr_lib" 1957 1977 ROPTS="$ropts" 1958 1978 if [[ ( $(echo $host | cut -c1-3) = nec || $(echo $host | cut -c1-3) = ibm || $host = lcsgih || $host = lcsgib || $host = lctit || $host = lcfimm || $host = lcxt4 ) && -n $numprocs ]] … … 2742 2762 2743 2763 2764 # EVENTUELLE INPUT-KOMMANDOS ABARBEITEN 2765 (( i = 0 )) 2766 while (( i < iic )) 2767 do 2768 (( i = i + 1 )) 2769 if (( i == 1 )) 2770 then 2771 printf "\n\n *** execution of INPUT-commands:\n$striche" 2772 fi 2773 printf "\n >>> ${in_command[$i]}" 2774 eval ${in_command[$i]} 2775 if (( i == iic )) 2776 then 2777 printf "\n$striche\n" 2778 fi 2779 done 2780 2781 2782 # VERBLEIBENDE CPU-ZEIT BERECHNEN 2783 cpurest=${cpumax}. 2784 2785 2786 # START DVR STREAMING SERVER 2787 if [[ $(echo $package_list | grep -c dvrp_graphics) != 0 ]] 2788 then 2789 if [[ "$dvr_server" != "" ]] 2790 then 2791 2792 printf "\n\n *** preparing the dvr streaming server configuration file" 2793 2794 # Check, if a dvr server is already running 2795 running_dvrserver_id=`echo $(ps -edaf | grep .dvrserver.config | grep -v grep) | cut -d" " -f2` 2796 if [[ "$running_dvrserver_id" != "" ]] 2797 then 2798 2799 printf "\n +++ WARNING: A dvr server with id=$running_dvrserver_id is already running!" 2800 printf "\n This server is used instead starting a new one!" 2801 2802 else 2803 2804 # COPY CONFIGURATION FILE FOR STREAMING SERVER FROM REPOSITORY TO HERE 2805 if [[ -f ${PALM_BIN}/.dvrserver.config ]] 2806 then 2807 cp ${PALM_BIN}/.dvrserver.config . 2808 2809 # Entering the BASEDIR, UID and GID into this file 2810 user_id=`id -u` 2811 group_id=`id -g` 2812 # & is needed as seperator, because TEMPDIR contains / 2813 sed "s&<replace by dvr data directory>&${TEMPDIR}&g" .dvrserver.config > .dvrserver.1 2814 sed "s/<replace by user id>/$user_id/g" .dvrserver.1 > .dvrserver.2 2815 sed "s/<replace by group id>/$group_id/g" .dvrserver.2 > .dvrserver.3 2816 mv .dvrserver.3 .dvrserver.config 2817 rm .dvrserver.1 .dvrserver.2 2818 2819 # Start dvr server in background, get his id and print on terminal 2820 $dvr_server .dvrserver.config >> DVR_LOGFILE 2>&1 & 2821 dvrserver_id=`echo $(ps -edaf | grep .dvrserver.config) | cut -d" " -f2` 2822 printf "\n *** streaming server with id=$dvrserver_id is started in background" 2823 local_dvrserver_running=.TRUE. 2824 else 2825 printf "\n +++ missing file \".dvrserver.config\" in directory:" 2826 printf "\n \"$PALM_BIN\" " 2827 locat=dvr 2828 exit 2829 fi 2830 2831 fi 2832 2833 else 2834 printf "\n\n --- INFORMATIVE: no dvr streaming server will be started" 2835 fi 2836 fi 2837 2838 2744 2839 # NAMELIST-DATEI MIT WERTEN VON ENVIRONMENT-VARIABLEN ERZEUGEN (ZU 2745 2840 # LESEN VON PALM) … … 2748 2843 write_binary = '$write_binary', tasks_per_node = $tasks_per_node, 2749 2844 maximum_cpu_time_allowed = ${cpumax}., 2750 revision = '$global_revision' / 2845 revision = '$global_revision', 2846 local_dvrserver_running = $local_dvrserver_running / 2751 2847 2752 2848 %%END%% 2753 2754 2755 # EVENTUELLE INPUT-KOMMANDOS ABARBEITEN2756 (( i = 0 ))2757 while (( i < iic ))2758 do2759 (( i = i + 1 ))2760 if (( i == 1 ))2761 then2762 printf "\n\n *** execution of INPUT-commands:\n$striche"2763 fi2764 printf "\n >>> ${in_command[$i]}"2765 eval ${in_command[$i]}2766 if (( i == iic ))2767 then2768 printf "\n$striche\n"2769 fi2770 done2771 2772 2773 # VERBLEIBENDE CPU-ZEIT BERECHNEN2774 cpurest=${cpumax}.2775 2849 2776 2850 … … 3178 3252 # [[ ! ( "$cond1" = debug || "$cond2" = debug ) ]] && cat aout_output* 3179 3253 printf "\n$striche\n *** execution finished \n" 3254 3255 # Stop the dvr streaming server 3256 if [[ "$dvrserver_id" != "" ]] 3257 then 3258 kill $dvrserver_id 3259 printf "\n *** dvr server with id=$dvrserver_id has been stopped" 3260 fi 3180 3261 fi 3181 3262 … … 3254 3335 then 3255 3336 printf "\n +++ temporary OUTPUT-file ${localout[$i]} does not exist\n" 3256 elif [[ ! - f ${localout[$i]}/_0000&& $files_for_pes = true ]]3337 elif [[ ! -d ${localout[$i]} && $files_for_pes = true ]] 3257 3338 then 3258 3339 printf "\n +++ temporary OUTPUT-file ${localout[$i]}/.... does not exist\n" -
palm/trunk/SOURCE/init_dvrp.f90
r254 r260 4 4 ! Current revisions: 5 5 ! ----------------- 6 ! Output names are changed: surface=groundplate, buildings=topography 6 7 ! Output of messages replaced by message handling routine. 7 8 ! Clipping implemented. … … 146 147 ENDIF 147 148 149 ! 150 !-- A local dvrserver running always outputs on temporary directory DATA_DVR 151 IF ( local_dvrserver_running ) THEN 152 dvrp_directory = 'DATA_DVR' 153 ENDIF 154 148 155 IF ( dvrp_output /= 'local' ) THEN 149 156 IF ( dvrp_file /= 'default' .AND. dvrp_file /= '/dev/null' ) THEN … … 176 183 mode_dvrp(m)(1:9) /= 'pathlines' ) THEN 177 184 178 message_string = 'mode_dvrp="' // TRIM( mode_dvrp ) // '" not allowed'185 message_string = 'mode_dvrp="' // TRIM( mode_dvrp(m) ) // '" not allowed' 179 186 CALL message( 'init_dvrp', 'PA0198', 1, 2, 0, 6, 0 ) 180 187 CALL local_stop … … 259 266 260 267 ! 261 !-- Create filename for buildings268 !-- Create filename for topography 262 269 IF ( dvrp_output == 'rtsp' ) THEN 263 270 264 271 dvrp_file = prefix_chr // TRIM( mode_dvrp(m) ) & 265 // '/ buildings.dvr'272 // '/topography.dvr' 266 273 dvrp_file_c = dvrp_file 267 274 CALL DVRP_OUTPUT_RTSP( m-1, dvrp_host_c, dvrp_username_c, & … … 272 279 273 280 dvrp_file = prefix_chr // TRIM( mode_dvrp(m) ) & 274 // '. buildings.dvr'281 // '.topography.dvr' 275 282 dvrp_file_c = dvrp_file 276 283 ! CALL DVRP_OUTPUT_FTP( m-1, 0, dvrp_host_c, dvrp_username_c, & … … 282 289 IF ( dvrp_file(1:9) /= '/dev/null' ) THEN 283 290 dvrp_file_local = prefix_chr // TRIM( mode_dvrp(m) ) & 284 // '. buildings.dvr'291 // '.topography.dvr' 285 292 dvrp_file_local_c = dvrp_file_local 286 293 ELSE … … 378 385 379 386 ! 380 !-- Write the surface isosurface (ground plate at z=0)on file387 !-- Write the ground plate (z=0) isosurface on file 381 388 CALL DVRP_INIT( m-1, 0 ) 382 389 … … 385 392 IF ( dvrp_output == 'rtsp' ) THEN 386 393 387 dvrp_file = prefix_chr // TRIM( mode_dvrp(m) ) // '/surface.dvr' 394 dvrp_file = prefix_chr // TRIM( mode_dvrp(m) ) // & 395 '/groundplate.dvr' 388 396 dvrp_file_c = dvrp_file 389 397 CALL DVRP_OUTPUT_RTSP( m-1, dvrp_host_c, dvrp_username_c, & … … 393 401 ELSEIF ( dvrp_output == 'ftp' ) THEN 394 402 395 dvrp_file = prefix_chr // TRIM( mode_dvrp(m) ) // '.surface.dvr' 403 dvrp_file = prefix_chr // TRIM( mode_dvrp(m) ) // & 404 '.groundplate.dvr' 396 405 dvrp_file_c = dvrp_file 397 406 ! CALL DVRP_OUTPUT_FTP( m-1, 0, dvrp_host_c, dvrp_username_c, & … … 403 412 IF ( dvrp_file(1:9) /= '/dev/null' ) THEN 404 413 dvrp_file_local = prefix_chr // TRIM( mode_dvrp(m) ) & 405 // '. surface.dvr'414 // '.groundplate.dvr' 406 415 dvrp_file_local_c = dvrp_file_local 407 416 ELSE -
palm/trunk/SOURCE/modules.f90
r242 r260 6 6 ! ----------------- 7 7 ! +clip_dvrp_*, cluster_size, dvrp_overlap, dvrp_total_overlap, 8 ! n*_dvrp in dvrp_variables8 ! local_dvrserver_running, n*_dvrp in dvrp_variables 9 9 ! +canyon_height, canyon_width_x, canyon_width_y, canyon_wall_left, 10 10 ! canyon_wall_south, conserve_volume_flow_mode, dp_external, dp_level_b, … … 549 549 550 550 LOGICAL :: cyclic_dvrp = .FALSE., dvrp_overlap, dvrp_total_overlap, & 551 loc k_steering_update = .FALSE.,&551 local_dvrserver_running, lock_steering_update = .FALSE., & 552 552 use_seperate_pe_for_dvrp_output = .FALSE. 553 553 -
palm/trunk/SOURCE/parin.f90
r257 r260 4 4 ! Current revisions: 5 5 ! ----------------- 6 ! +local_dvrserver_running in envpar 6 7 ! Output of messages replaced by message handling routine. 7 8 ! +canyon_height, canyon_width_x, canyon_width_y, canyon_wall_left, … … 72 73 USE averaging 73 74 USE control_parameters 75 USE dvrp_variables 74 76 USE grid_variables 75 77 USE indices … … 159 161 160 162 161 NAMELIST /envpar/ host, maximum_cpu_time_allowed, revision, return_addres,&162 re turn_username, run_identifier, tasks_per_node, &163 write_binary163 NAMELIST /envpar/ host, local_dvrserver_running, maximum_cpu_time_allowed, & 164 revision, return_addres, return_username, run_identifier, & 165 tasks_per_node, write_binary 164 166 165 167 !
Note: See TracChangeset
for help on using the changeset viewer.