WRF Test Framework¶
The WRF Testing Framework (WTF) builds, tests, and analyzes results for one or more versions of the WRF model. This testing typically completes in less than one hour. WRF code is regularly tested for the following compilers, parallel processing configurations, compile-time variations, and run-time variations of the WRF software:
Compilers
GNU Fortran
PGI Fortran
Intel Fortran
Build Configurations
Serial (single-processor)
OpenMP (multithreaded, shared memory)
MPI (multiprocessor, distributed memory)
Compile-time Variations
WRF-ARW
Chem
Chem with KPP
Idealized Super Cell
Idealized Baroclinic Wave
WRF-ARW em_real Run-time Variations
Adaptive Time-stepping
Digital Filter (DFI)
FDDA
Grib 1 WRF Output
Binary WRF Output
Nesting
Quilting
Global Domain
Physics Options Applied During Testing¶
The following table and associated table key summarize the combinations of physics options tested for WRF. Although one physics option should not influence another physics option (e.g., the microphysics scheme should be independent of the cumulus scheme), certain options are developed and tested for a small subset of other physics option combinations; therefore, the following table is a useful guide for WRF physics combinations known to provide bit-for-bit results between serial and MPI WRF compilations. Each row in the table represents a specific test, and each column represents a specific physics option. Each physics combination should provide successful short-term forecasts with bit-for-bit results when comparing single-processor output against multi-processor output.
KEY 1: Column Labels
NL |
Test Namelist Identifier |
PBL |
Planetary Boundary Layer Scheme |
CU |
Cumulus Scheme |
MP |
Microphysics Scheme |
LW |
Longwave Radation Scheme |
SW |
Shortwave Radation Scheme |
SFC |
Surface Physics Scheme |
LAND |
Land Surface Scheme |
URB |
Urban Physics Scheme |
SHCU |
Shallow Cumulus Scheme |
TOPO |
Topography-following Wind Scheme |
KEY 2: Test Namelist Codes
AD |
Adaptive Time Stepping |
BN |
Binary WRF Output |
DF |
Digital Filtering |
FD |
FDDA |
GR |
Grib1 WRF Output |
NE |
Basic Nesting |
QT |
Quilting |
Table 1 : WRF ARW Tests, Providing Successful 30-min Forecasts & Bit-for-bit Results, on Serial vs. MPI Runs
NL |
PBL |
CU |
MP |
LW |
SW |
SFC |
LAND |
URB |
SHCU |
TOPO |
|---|---|---|---|---|---|---|---|---|---|---|
global |
1 |
1 |
3 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
01 |
1 |
1 |
1 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
02 |
1 |
2 |
4 |
3 |
3 |
1 |
4 |
0 |
0 |
0 |
02GR |
1 |
2 |
4 |
3 |
3 |
1 |
4 |
0 |
0 |
0 |
03 |
4 |
3 |
3 |
4 |
4 |
4 |
1 |
0 |
0 |
0 |
03DF |
4 |
3 |
3 |
4 |
4 |
4 |
1 |
0 |
0 |
0 |
03FD |
4 |
3 |
3 |
4 |
4 |
4 |
1 |
0 |
0 |
0 |
05 |
7 |
5 |
5 |
5 |
5 |
7 |
7 |
0 |
0 |
0 |
05AD |
7 |
5 |
5 |
5 |
5 |
7 |
7 |
0 |
0 |
0 |
05FD |
7 |
5 |
5 |
5 |
5 |
7 |
7 |
0 |
0 |
0 |
06 |
8 |
6 |
6 |
4 |
4 |
2 |
1 |
0 |
0 |
0 |
06BN |
8 |
6 |
6 |
4 |
4 |
2 |
1 |
0 |
0 |
0 |
07 |
8 |
14 |
7 |
7 |
7 |
1 |
2 |
2 |
0 |
0 |
07NE |
8 |
14 |
7 |
7 |
7 |
1 |
2 |
2 |
0 |
0 |
08 |
9 |
7 |
8 |
5 |
5 |
2 |
3 |
0 |
0 |
0 |
09 |
6 |
1 |
9 |
3 |
3 |
5 |
3 |
0 |
0 |
0 |
09QT |
6 |
1 |
9 |
3 |
3 |
5 |
3 |
0 |
0 |
0 |
10 |
4 |
2 |
10 |
1 |
2 |
4 |
7 |
0 |
0 |
0 |
12 |
8 |
3 |
16 |
4 |
4 |
1 |
2 |
3 |
0 |
0 |
12GR |
8 |
3 |
16 |
4 |
4 |
1 |
2 |
3 |
0 |
0 |
13 |
9 |
7 |
13 |
1 |
1 |
2 |
3 |
0 |
2 |
0 |
14 |
4 |
6 |
3 |
3 |
3 |
4 |
3 |
0 |
0 |
0 |
15 |
5 |
14 |
2 |
5 |
5 |
1 |
7 |
0 |
0 |
0 |
15AD |
5 |
14 |
2 |
5 |
5 |
1 |
7 |
0 |
0 |
0 |
16 |
10 |
14 |
4 |
5 |
5 |
10 |
7 |
0 |
0 |
0 |
16BN |
10 |
14 |
4 |
5 |
5 |
10 |
7 |
0 |
0 |
0 |
16DF |
10 |
14 |
4 |
5 |
5 |
10 |
7 |
0 |
0 |
0 |
17 |
2 |
2 |
4 |
3 |
3 |
2 |
2 |
0 |
0 |
0 |
17AD |
2 |
2 |
4 |
3 |
3 |
2 |
2 |
0 |
0 |
0 |
19 |
1 |
1 |
4 |
1 |
2 |
1 |
5 |
0 |
0 |
0 |
20 |
12 |
1 |
4 |
1 |
2 |
1 |
2 |
0 |
0 |
0 |
20NE |
12 |
1 |
4 |
1 |
2 |
1 |
2 |
0 |
0 |
0 |
25 |
1 |
1 |
1 |
1 |
1 |
11 |
1 |
0 |
0 |
0 |
26 |
2 |
1 |
1 |
1 |
1 |
3 |
1 |
0 |
0 |
0 |
29 |
9 |
3 |
4 |
1 |
2 |
1 |
5 |
0 |
2 |
0 |
29QT |
9 |
3 |
4 |
1 |
2 |
1 |
5 |
0 |
2 |
0 |
30 |
2 |
93 |
4 |
1 |
1 |
2 |
1 |
0 |
2 |
0 |
31 |
7 |
2 |
14 |
3 |
3 |
7 |
1 |
0 |
0 |
0 |
31AD |
7 |
2 |
14 |
3 |
3 |
7 |
1 |
0 |
0 |
0 |
32 |
9 |
7 |
11 |
3 |
3 |
1 |
5 |
0 |
2 |
0 |
33 |
9 |
7 |
11 |
4 |
4 |
1 |
5 |
0 |
2 |
0 |
34 |
9 |
7 |
11 |
4 |
4 |
1 |
2 |
0 |
2 |
0 |
35 |
9 |
7 |
11 |
3 |
3 |
1 |
2 |
0 |
2 |
0 |
37 |
9 |
7 |
11 |
4 |
4 |
2 |
2 |
0 |
2 |
0 |
38 |
5 |
14 |
2 |
5 |
5 |
2 |
7 |
0 |
0 |
0 |
38AD |
5 |
14 |
2 |
5 |
5 |
2 |
7 |
0 |
0 |
0 |
39 |
5 |
14 |
2 |
5 |
5 |
5 |
7 |
0 |
0 |
0 |
39AD |
5 |
14 |
2 |
5 |
5 |
5 |
7 |
0 |
0 |
0 |
40 |
7 |
2 |
14 |
3 |
3 |
7 |
1 |
0 |
0 |
0 |
41 |
2 |
2 |
4 |
3 |
3 |
2 |
2 |
0 |
0 |
0 |
42 |
4 |
2 |
10 |
1 |
2 |
4 |
7 |
0 |
0 |
0 |
TABLE 2: WRF ARW Tests, Providing Successful 30-minute Forecasts & Bit-for-bit Results, on Serial vs. OpenMP Runs
NL |
PBL |
CU |
MP |
LW |
SW |
SFC |
LAND |
URB |
SHCU |
TOPO |
|---|---|---|---|---|---|---|---|---|---|---|
global |
1 |
1 |
3 |
1 |
1 |
1 |
1 |
0 |
0 |
0 |
03 |
4 |
3 |
3 |
4 |
4 |
4 |
1 |
0 |
0 |
0 |
03DF |
4 |
3 |
3 |
4 |
4 |
4 |
1 |
0 |
0 |
0 |
03FD |
4 |
3 |
3 |
4 |
4 |
4 |
1 |
0 |
0 |
0 |
06 |
8 |
6 |
6 |
4 |
4 |
2 |
1 |
0 |
0 |
0 |
06BN |
8 |
6 |
6 |
4 |
4 |
2 |
1 |
0 |
0 |
0 |
07 |
8 |
14 |
7 |
7 |
7 |
1 |
2 |
2 |
0 |
0 |
07NE |
8 |
14 |
7 |
7 |
7 |
1 |
2 |
2 |
0 |
0 |
08 |
9 |
7 |
8 |
5 |
5 |
2 |
3 |
0 |
0 |
0 |
10 |
4 |
2 |
10 |
1 |
2 |
4 |
7 |
0 |
0 |
0 |
14 |
4 |
6 |
3 |
3 |
3 |
4 |
3 |
0 |
0 |
0 |
16 |
10 |
14 |
4 |
5 |
5 |
10 |
7 |
0 |
0 |
0 |
16BN |
10 |
14 |
4 |
5 |
5 |
10 |
7 |
0 |
0 |
0 |
16DF |
10 |
14 |
4 |
5 |
5 |
10 |
7 |
0 |
0 |
0 |
17 |
2 |
2 |
4 |
3 |
3 |
2 |
2 |
0 |
0 |
0 |
17AD |
2 |
2 |
4 |
3 |
3 |
2 |
2 |
0 |
0 |
0 |
20 |
12 |
1 |
4 |
1 |
2 |
1 |
2 |
0 |
0 |
0 |
20NE |
12 |
1 |
4 |
1 |
2 |
1 |
2 |
0 |
0 |
0 |
31 |
7 |
2 |
14 |
3 |
3 |
7 |
1 |
0 |
0 |
0 |
31AD |
7 |
2 |
14 |
3 |
3 |
7 |
1 |
0 |
0 |
0 |
38 |
5 |
14 |
2 |
5 |
5 |
2 |
7 |
0 |
0 |
0 |
40 |
7 |
2 |
14 |
3 |
3 |
7 |
1 |
0 |
0 |
0 |
41 |
2 |
2 |
4 |
3 |
3 |
2 |
2 |
0 |
0 |
0 |
42 |
4 |
2 |
10 |
1 |
2 |
4 |
7 |
0 |
0 |
0 |
TABLE 3: WRF Idealized Supercell Tests, Providing Successful 30-minute Forecasts & and Bit-for-bit Results, on Serial vs. Non-serial Runs (OpenMP and MPI)
NL |
PBL |
CU |
MP |
LW |
SW |
SFC |
LAND |
URB |
SHCU |
TOPO |
|---|---|---|---|---|---|---|---|---|---|---|
01 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
01NE |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
02 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
02NE |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
03 |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
03NE |
0 |
0 |
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
04 |
0 |
0 |
2 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
04NE |
0 |
0 |
2 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
05 |
0 |
0 |
2 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
05NE |
0 |
0 |
2 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
06 |
0 |
0 |
18 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
06NE |
0 |
0 |
18 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
07 |
0 |
0 |
17 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
08 |
0 |
0 |
18 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
09 |
0 |
0 |
19 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
10 |
0 |
0 |
21 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
TABLE 4: WRF Idealized B-wave Tests, Providing Successful 30-minute Forecasts & Bit-for-bit Results, on Serial vs. Non-serial Runs (OpenMP and MPI)
NL |
PBL |
CU |
MP |
LW |
SW |
SFC |
LAND |
URB |
SHCU |
TOPO |
|---|---|---|---|---|---|---|---|---|---|---|
1 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
1NE |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
2 |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
2NE |
0 |
0 |
1 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
3 |
0 |
0 |
2 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
3NE |
0 |
0 |
2 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
4 |
0 |
0 |
2 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
4NE |
0 |
0 |
2 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
5 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
5NE |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |
0 |