Sadržaj

Dostupne verzije

VerzijaModul
3.8.1WRF/3.8.1-openmpi-intel
4.1.5WRF/4.1.5
4.3WRF/4.3

Sve verzije su optimirane za izvođenje na p28* redovima

Korištenje

U najosnovnijoj verziji, tijek rada pri izradi simulacija je sljedeći:

  1. WPS korak - prikupljanje ulaznih meteoroloških podataka i priprema statičkih podataka potrebnih za simuliranje
  2. WRF korak - inicijalizacija statičkih podataka iz prethodnog koraka i integracija pomoću WRF-ARW jezgre

Prvi korak je serijske prirode i ne zahtijeva pozivanje neke od dostupnih paralelnih okolina.

Drugi se korak većinski oslanja na paralelizaciju i ubrzanje proračuna korištenjem više procesora.

Dva savjeta za lakše izvođenje simulacija:

  1. /apps/WRF/WPS_GEOG - putanja za uobičajene statičke podatke WPS (approx. 29G)
  2. WRF_HOME - varijabla okoline koja olakšava pristup dodatnim ulaznim podacima

Primjer

Ispod se nalaze upute za korištenje verzije WRF 4.3 temeljene na službenom predlošku WRF-ARW (uragan Matthew)

Datoteke koje su predstavljene izvršiti će spomenuti predložak u trenutnom direktoriju:

  • namelist.wps - konfiguracijska datoteka WPS
  • namelist.input - konfiguracijska datoteka WRF
  • wps.sge - SGE skripta koraka WPS
  • wrf-serial.sge - SGE skripta serijskog dijela WRF
  • wrf-parallel.sge - SGE skripta paralelnog dijela WRF
  • run.sh - upute za podnošenje skripta WPS i WRF
Upute o podnošenju poslova bi trebale biti primjenjive i na prijašnje verzije WRF, no postoji mogućnost da se ulazne datoteke moraju prilagoditi (detaljnije upute na službenim stranicama)


namelist.wps
&share
  wrf_core         = 'ARW'
  max_dom          = 1
  start_date       = '2016-10-06_00:00:00'
  end_date         = '2016-10-08_00:00:00'
  interval_seconds = 21600
  io_form_geogrid  = 2
  active_grid      = .true.
/

&geogrid
  parent_id            = 1
  parent_grid_ratio    = 1
  i_parent_start       = 1
  j_parent_start       = 1
  e_we                 = 91
  e_sn                 = 100
  geog_data_res        = 'default'
  dx                   = 27000
  dy                   = 27000
  map_proj             = 'mercator'
  ref_lat              = 28.00
  ref_lon              = -75.00
  truelat1             = 30.0
  truelat2             = 60.0
  stand_lon            = -75.0
  geog_data_path       =
  opt_geogrid_tbl_path =
/

&ungrib
  out_format = 'WPS'
  prefix     = 'FILE'
/

&metgrid
  fg_name              = 'FILE'
  io_form_metgrid      = 2
  opt_metgrid_tbl_path =
/
namelist.input
&time_control
  run_days           = 0
  run_hours          = 48
  run_minutes        = 0
  run_seconds        = 0
  start_year         = 2016
  start_month        = 10
  start_day          = 06
  start_hour         = 00
  end_year           = 2016
  end_month          = 10
  end_day            = 08
  end_hour           = 00
  interval_seconds   = 21600
  input_from_file    = .true.
  history_interval   = 180
  frames_per_outfile = 1
  restart            = .false.
  restart_interval   = 1440
  io_form_history    = 2
  io_form_restart    = 2
  io_form_input      = 2
  io_form_boundary   = 2
  debug_level        = 0
/

&domains
  time_step               = 100
  max_dom                 = 1
  e_we                    = 91
  e_sn                    = 100
  e_vert                  = 45
  p_top_requested         = 5000
  num_metgrid_levels      = 32
  num_metgrid_soil_levels = 4
  dx                      = 27000
  dy                      = 27000
  grid_id                 = 1
  parent_id               = 0
  i_parent_start          = 1
  j_parent_start          = 1
  parent_grid_ratio       = 1
  feedback                = 1
  smooth_option           = 0
/

&physics
  mp_physics              = 3
  ra_lw_physics           = 1
  ra_sw_physics           = 1
  radt                    = 30
  sf_sfclay_physics       = 1
  sf_surface_physics      = 2
  num_soil_layers         = 4
  bl_pbl_physics          = 1
  bldt                    = 0
  cu_physics              = 1
  cudt                    = 5
  isfflx                  = 1
  ifsnow                  = 1
  icloud                  = 1
  surface_input_source    = 3
  num_land_cat            = 21
  sf_urban_physics        = 0
  sf_ocean_physics        = 0
/

&dynamics
  w_damping               = 0
  diff_opt                = 1
  km_opt                  = 4
  diff_6th_opt            = 0
  diff_6th_factor         = 0.12
  base_temp               = 290.
  damp_opt                = 0
  zdamp                   = 5000.
  dampcoef                = 0.2
  damp_opt                = 0
  damp_opt                = 0
  non_hydrostatic         = .true.
  moist_adv_opt           = 1
  scalar_adv_opt          = 1
/

&bdy_control
  spec_bdy_width          = 5
  spec_zone               = 1
  relax_zone              = 4
  specified               = .true.
  nested                  = .false.
/

&namelist_quilt
  nio_tasks_per_group = 0
/
wps.sge
#$ -N wps
#$ -cwd

# postavi okolinu
module load WRF/4.3

# skini ulazne podatke i spremi ih u direktorij DATA
wget -N https://www2.mmm.ucar.edu/wrf/TUTORIAL_DATA/matthew_1deg.tar.gz
mkdir -p DATA
tar xvf matthew_1deg.tar.gz -C DATA --strip-components 1 --skip-old-files

# upiši pravilne staze u namelist.wps
GEOGPATH="'/apps/WRF/WPS_GEOG'"
GTBLPATH="'${WRF_HOME}/WPS/geogrid'"
MTBLPATH="'${WRF_HOME}/WPS/metgrid'"
sed -i "s|  geog_data_path.*|  geog_data_path = ${GEOGPATH}|g" namelist.wps
sed -i "s|  opt_geogrid_tbl_path.*|  opt_geogrid_tbl_path = ${GTBLPATH}|g" namelist.wps
sed -i "s|  opt_metgrid_tbl_path.*|  opt_metgrid_tbl_path = ${MTBLPATH}|g" namelist.wps
 
# wps koraci
link_grib.csh DATA/fnl
VTBLPATH="${WRF_HOME}/WPS/ungrib/Variable_Tables/Vtable.GFS"
ln -sf $VTBLPATH Vtable
ungrib.exe
geogrid.exe
metgrid.exe

wrf-serial.sge
#$ -N wrf-serial
#$ -cwd

# postavi okolinu
module load WRF/4.3

# stavi poveznice na dodatne datoteke iz direktorija WRF/run ( osim namelist.input* )
find $WRF_HOME/WRF/run -type f ! -name 'namelist.input*' -exec ln -s {} . \;        

# wrf real korak
real.exe
wrf-parallel.sge
#$ -N wrf-parallel
#$ -cwd
#$ -pe p28-mpi 4

# postavi okolinu
module load WRF/4.3

# wrf wrf korak
mpirun -np $NSLOTS wrf.exe
run.sh
#!/bin/bash

# podnesi SGE skripte jednu za drugom
qsub -N wps wps.sge
qsub -hold_jid wps -N wrf-serial wrf-serial.sge
qsub -hold_jid wrf-serial -N wrf-parallel wrf-parallel.sge

Performanse

Ispod se nalazi totalno vrijeme integracije kao i paralelna efikasnost izvršenja gore opisanog predloška

Paralelna efikasnost veća od jedan je do serijskog izvođenja na a16* redu (samo jedan procesor) za koji WRF nije optimizran

  • No labels