Both sides previous revision Previous revision Next revision | Previous revision |
software:wrf:caviness [2021-02-03 13:08] – [Example WPS run] mkyle | software:wrf:caviness [2024-04-01 15:06] (current) – [Download and install required libraries] anita |
---|
| |
<code bash> | <code bash> |
[(it_css:traine)@login01 ~]$ WRF_PREFIX=/work/it_css/sw/wrf/20210121 ## MAKE SURE THAT THIS IS CHANGED TO YOUR WORK GROUP DIRECTORY OR HOME DIRECTORY ## | [(it_css:traine)@login01 ~]$ WRF_PREFIX=$WORKDIR/sw/wrf/20210121 ## MAKE SURE THAT THIS IS CHANGED TO YOUR WORK GROUP DIRECTORY OR HOME DIRECTORY ## |
[(it_css:traine)@login01 ~]$ mkdir -p "$WRF_PREFIX" | [(it_css:traine)@login01 ~]$ mkdir -p "$WRF_PREFIX" |
[(it_css:traine)@login01 ~]$ WRF_SRC="${WRF_PREFIX}/src" | [(it_css:traine)@login01 ~]$ WRF_SRC="${WRF_PREFIX}/src" |
=== Install netcdf library === | === Install netcdf library === |
<code bash> | <code bash> |
[(it_css:traine)@login01 LIBRARIES]$ tar -xf netcdf-4.1.3 | [(it_css:traine)@login01 LIBRARIES]$ tar -xf netcdf-4.1.3.tar.gz |
[(it_css:traine)@login01 LIBRARIES]$ cd netcdf-4.1.3 | [(it_css:traine)@login01 LIBRARIES]$ cd netcdf-4.1.3 |
[(it_css:traine)@login01 netcdf-4.1.3]$ ./configure --prefix="$WRF_PREFIX" --disable-dap --disable-netcdf-4 --disable-shared | [(it_css:traine)@login01 netcdf-4.1.3]$ ./configure --prefix="$WRF_PREFIX" --disable-dap --disable-netcdf-4 --disable-shared |
=== Install zlib library === | === Install zlib library === |
<code bash> | <code bash> |
[(it_css:traine)@login01 LIBRARIES]$ tar -xf zlib-1.2.7.tar* | [(it_css:traine)@login01 LIBRARIES]$ tar -xf zlib-1.2.7.tar.gz |
[(it_css:traine)@login01 LIBRARIES]$ cd zlib-1.2.7 | [(it_css:traine)@login01 LIBRARIES]$ cd zlib-1.2.7 |
[(it_css:traine)@login01 zlib-1.2.7]$ ./configure --prefix="$WRF_PREFIX" | [(it_css:traine)@login01 zlib-1.2.7]$ ./configure --prefix="$WRF_PREFIX" |
=== Install libpng library === | === Install libpng library === |
<code bash> | <code bash> |
[(it_css:traine)@login01 LIBRARIES]$ tar -xf libpng-1.2.50.tar* | [(it_css:traine)@login01 LIBRARIES]$ tar -xf libpng-1.2.50.tar.gz |
[(it_css:traine)@login01 LIBRARIES]$ cd libpng-1.2.50 | [(it_css:traine)@login01 LIBRARIES]$ cd libpng-1.2.50 |
[(it_css:traine)@login01 libpng-1.2.50]$ ./configure --prefix="$WRF_PREFIX" | [(it_css:traine)@login01 libpng-1.2.50]$ ./configure --prefix="$WRF_PREFIX" |
=== Install jasper library === | === Install jasper library === |
<code bash> | <code bash> |
[(it_css:traine)@login01 LIBRARIES]$ tar -xf jasper-1.900.1.tar* | [(it_css:traine)@login01 LIBRARIES]$ tar -xf jasper-1.900.1.tar.gz |
[(it_css:traine)@login01 LIBRARIES]$ cd jasper-1.900.1 | [(it_css:traine)@login01 LIBRARIES]$ cd jasper-1.900.1 |
[(it_css:traine)@login01 jasper-1.900.1]$ ./configure --prefix="$WRF_PREFIX" | [(it_css:traine)@login01 jasper-1.900.1]$ ./configure --prefix="$WRF_PREFIX" |
</code> | </code> |
=== Configure WRF parallel build === | === Configure WRF parallel build === |
Configuring parallel build. You will want to select option ''66'' and nesting option ''0''. | Configuring parallel build. You will want to select option ''66'' and nesting option ''1''. |
<code bash> | <code bash> |
[(it_css:traine)@login01 WRF]$ ./clean -a | [(it_css:traine)@login01 WRF]$ ./clean -a |
<code bash> | <code bash> |
[(it_css:traine)@login01 WRF]$ patch -p1 <<EOT | [(it_css:traine)@login01 WRF]$ patch -p1 <<EOT |
--- A/configure.wrf 2020-12-10 14:06:01.907649095 -0500 | --- A/configure.wrf 2020-12-10 14:06:01.907649095 -0500 |
+++ B/configure.wrf 2020-12-10 14:40:00.791338460 -0500 | +++ B/configure.wrf 2020-12-10 14:40:00.791338460 -0500 |
@@ -118,8 +118,8 @@ | @@ -118,8 +118,8 @@ |
SFC = ifort | SFC = ifort |
+DM_CC = mpicc | +DM_CC = mpicc |
FC = time \$(DM_FC) | FC = time \$(DM_FC) |
CC = \$(DM_CC) -DFSEEKO64_OK | CC = \$(DM_CC) -DFSEEKO64_OK |
LD = \$(FC) | LD = \$(FC) |
@@ -140,7 +140,7 @@ | @@ -140,7 +140,7 @@ |
-FCBASEOPTS = \$(FCBASEOPTS_NO_G) \$(FCDEBUG) | -FCBASEOPTS = \$(FCBASEOPTS_NO_G) \$(FCDEBUG) |
+FCBASEOPTS = \$(FCBASEOPTS_NO_G) \$(FCDEBUG) -assume nocc_omp | +FCBASEOPTS = \$(FCBASEOPTS_NO_G) \$(FCDEBUG) -assume nocc_omp |
MODULE_SRCH_FLAG = | MODULE_SRCH_FLAG = |
TRADFLAG = -traditional-cpp | TRADFLAG = -traditional-cpp |
CPP = /lib/cpp -P -nostdinc | CPP = /lib/cpp -P -nostdinc |
The last step is to run ''metgrid.exe'' | The last step is to run ''metgrid.exe'' |
<code bash> | <code bash> |
[triane@r00n49 wps_job]$ srun metgrid.exe | [triane@r00n49 wps_job]$ metgrid.exe |
... #MANY LINES & MINUTES LATER | ... #MANY LINES & MINUTES LATER |
Processing 2021-01-13_21 | Processing 2021-01-13_21 |
/ | / |
</code> | </code> |
To run WRF, we will use the ''wrfmpi.qs'' file. This job script is based on the script template found in ''/opt/templates/slurm/generic/mpi/openmpi/openmpi.qs''. The ''openmpi.qs'' job script file is updated regularly, so it is suggested that you also check and compare the contents of the ''openmpi.qs'' files to see if there has been any major changes to it. If there has been, then you might want to consider adding those changes to the ''wrfmpi.qs'' job script. To run WRF, you will use ''sbatch'' to submit the job to Slurm. | To run WRF, we will use the ''wrfmpi.qs'' file. This job script is based on the script template found in ''/opt/shared/templates/slurm/generic/mpi/openmpi/openmpi.qs''. The ''openmpi.qs'' job script file is updated regularly, so it is suggested that you also check and compare the contents of the ''openmpi.qs'' files to see if there has been any major changes to it. If there has been, then you might want to consider adding those changes to the ''wrfmpi.qs'' job script. To run WRF, you will use ''sbatch'' to submit the job to Slurm. |
<code bash> | <code bash> |
[(it_css:traine)@login01 wrf_job]$ sbatch wrfmpi.qs | [(it_css:traine)@login01 wrf_job]$ sbatch wrfmpi.qs |